VB.Net Problem mit RichTextBox die aus Access RichTextBox Daten korrekt anzeigen soll

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von VB1963.

    VB.Net Problem mit RichTextBox die aus Access RichTextBox Daten korrekt anzeigen soll

    Hallo Leute,

    Ich beschäftige mich seid kurzem mit VB und habe ein Problem mit einer RichTextBox die Daten aus einer Access Qry anzeigen soll. Die Textdaten werden zwar angezeigt, aber nicht im rtf Format.

    Im Access RichtextFeld ist der Text tadellos mit allen Formatierungen abgespeichert.
    Im VB kommt er als ganz gewöhnlicher Text mit allen Tag's an.

    Wo kann ich die rtf Formatierung in der VB RichTextBox einstellen?
    Weiß wer welche Attribute dazu gesetzt werden müssen.

    Danke

    P.

    Falsches Unterforum. #Verschoben
    - Solaris

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

    Willkommen im Forum. :thumbup:

    Petz schrieb:

    mit allen Tag's
    Eine RichTextBox hat Properties für PlainText Text und RichText Rtf.
    Weise dieser Deinen String zu.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ich hab mal in den Properties von VB.net 2010 nachgesehen.
    Finde dort kein Property dem ich RTF oder Plaintext zuweisen könnte.

    Wenn ich die RichTextBox Variable aufrufe dann bekomme ich aber

    txtAccessHelp.Rtf

    angezeigt.

    Kannst Du mir so eine Zuweisung zeigen, oder den genauen Namen für das Property.

    Danke
    Petz

    Petz schrieb:

    Kannst Du mir so eine Zuweisung zeigen

    VB.NET-Quellcode

    1. RichTextBox1.LoadFile("C:\DeinDocument.rtf") 'Lädt eine RTF-Datei (Rich Text Format) oder eine standardmäßige ASCII-Textdatei in das RichTextBox-Steuerelement.
    2. RichTextBox1.SaveFile("C:\DeinDocument.rtf", RichTextBoxStreamType.RichText) 'Speichert den Inhalt der RichTextBox in einem bestimmten Dateiformat.

    siehe RichTextBox-Klasse

    Im Access RichtextFeld ist der Text tadellos mit allen Formatierungen abgespeichert.
    Im VB kommt er als ganz gewöhnlicher Text mit allen Tag's an.
    Wohin kommt er an - erkläre das einmal genauer...

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „VB1963“ ()

    Petz schrieb:

    den genauen Namen für das Property

    RodFromGermany schrieb:

    Rtf

    VB.NET-Quellcode

    1. Dim txt = DEIN_RICHTEXT_HALT
    2. Me.RichTextBox.Rtf = txt
    oder halt direkt von Datei, wie es @VB1963 schrieb.
    Allerdings würde ich auch beim Laden das Format spezifizieren:

    VB.NET-Quellcode

    1. RichTextBox1.LoadFile("C:\DeinDocument.rtf", RichTextBoxStreamType.RichText)

    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke für die Anregungen. Leider funktioniert das so nicht.

    Ich beschreibe noch einmal was ich genau gemacht habe.

    1) Access DB: Eine Tabelle angelegt mit unter anderem einem Richtext Attribut

    Bsp:
    tblDocumentation:

    Feldname Description
    Felddatentyp: Memo
    Feldeigenschaften: Textformat: Rich-Text

    Dann habe ich in Access in dieses Feld Richtext Daten eingegeben und auch wieder ausgegeben.
    Das funktioniert tadellos mit allen Formatierungen. Wird richtig angezeigt! Passt


    2) In Visual Studio 2010 ein neues VB Projekt aufgemacht.

    Dann ein VB Formular angelegt:

    Bsp:
    frmArduino System.Windows.Forms.Form

    In diese Form habe ich aus VB eine Richtextbox eingefügt.

    Bsp:

    txtAccessHelp System.Windows.Forms.RichTextBox

    Dann habe ich im VB Projekt eine Datenverbindung zur Access Datenbank aufgebaut
    und getestet. Funktioniert tadellos.

    Dann habe ich in VB in der

    RichTextBox unter den Attributen

    DataBindings : Text ein DataSet zur AccessDatenbank aufgemacht und mit dem RichTextFeld aus
    Access verbunden.

    Das funktioniert auch.

    Das Ergebnis in VB in der RichTextBox sieht dann so aus:

    <div><strong><u>Command: </u></strong></div>

    <div><strong><font color="#E36C09">Vmove</font></strong> … Bewege das Fahrzeug von der aktuellen Position, relativ in eine vorgegebene Richtung um Anzahl von Spulen</div>

    <div>&nbsp;</div>

    <div><strong><u>Parameter:</u></strong></div>

    <div><font color="#E36C09">&lt;Fahrzeug Nr&gt;,&lt;Richtung relativ zur aktuellen Fahrzeug Lage&gt;,&lt;Anzahl Spulen&gt;</font></div>

    <div>&nbsp;</div>

    <div><strong><u>Beispiele:</u></strong></div>

    <div>Vmove=1,vorwärts,5</div>

    Also als Plain-Text und eben nicht als RichText so wie in Access eingegeben.

    So und nun meine Frage.

    Wo muß ich welches Property in VB in der RichTextBox wie ändern, damit aus
    dem PlainText eine RichText Anzeige wird, so wie es aussehen sollte.

    Danke. lg
    Petz

    Petz schrieb:

    Dann habe ich in VB in der RichTextBox unter den Attributen
    DataBindings : Text ein DataSet zur AccessDatenbank aufgemacht und mit dem RichTextFeld aus
    Access verbunden. Das funktioniert auch.
    Deine via Designer erstellte Datenbindung wegmachen (dort kannst du nur an die .Text-Eigenschaft binden)
    Im Form.Load-Ereignis das Binding manuell angeben - aber an die .Rtf-Eigenschaft binden...

    VB.NET-Quellcode

    1. DeineRichtextbox.DataBindings.Add(New Binding("Rtf", DeineBindingSource, "DeineColumn", True, DataSourceUpdateMode.OnPropertyChanged))

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