Inhalt von RTB als ByteArray speichern

  • WPF

Es gibt 42 Antworten in diesem Thema. Der letzte Beitrag () ist von r0tzi.

    VB.NET-Quellcode

    1. Public Shared Function GetContentBytes(tr As TextRange) As Byte()
    2. Using strm = New MemoryStream
    3. tr.Save(strm, DataFormats.Rtf)
    4. Return strm.ToArray
    5. End Using
    6. End Function
    7. Public Shared Sub SetContentBytes(tr As TextRange, content As Byte())
    8. Using strm = New MemoryStream(content)
    9. tr.Load(strm, DataFormats.Rtf)
    10. End Using
    11. End Sub


    funktioniert perfekt!
    Hi Leute mir ist gerade aufgefallen, dass es abstürtzt wenn grosser Bilder eingefügt werden.

    Bytearray ist

    Quellcode

    1. {Length=28523551}


    beim umwandeln in textrange mit

    Quellcode

    1. SetContentBytes(tr, bytesLoad)


    lädt es ewig und stürzt ab.

    kann es sein, dass der memory stream nur begrenzt ist?

    nochmal gedebugged, er bleibt exakt hier stehen:

    Quellcode

    1. tr.Load(strm, DataFormats.Rtf)


    das program geht sofort in "not responding" keine fehlermeldung nichts.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „r0tzi“ ()

    okay was ich auch bemerkt habe, das programm braucht beim start lt taskmanager 140mb... rufe ich nun das grösser bild ab, geht es kurzzeitig hoch auf 800mb, und pegelt sich bei 400 mb ein danach... ist das normal?

    neue erkenntnisse... wenn ich das bild grösser mache also doe RTB, dann funktioniert es komischerweise nicht. es stürzt ab.. wenn ich aber lauter kleiner bilder mache und ganz viele davon, dann geht es zumindest.

    *update2*

    ich habe es mal verglichen.... mit dem Stream geht es 20 sek um die daten aus sql in der RTB anzeigen zu lassen.

    mit dem alten XAML code ~0,8sek.... =O

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „r0tzi“ ()