Lesen Sie die C # -Textblock-Texteigenschaft, die mit Inlines gefüllt wird

Nehmen wir an, ich habe einen leeren Textblock:

textblock1.Text = "";

Dann habe ich nur Inlines-Inhalte mit diesen beiden Anweisungen eingefügt:

textblock1.Inlines.Add(new Run() { Text = "A. ", Foreground = Brushes.Red });
textblock1.Inlines.Add(new Run() { Text = responses.Current.Value, Foreground = Brushes.Black});

Das Erstaunliche ist, dass ich den Inhalt in meinem Fenster richtig visualisieren kann, aber die Text-Eigenschaft des Textblocks bleibt leer! Dies verursacht ein Problem, da ich den Wert dieses Textblocks an einen anderen Textblock übergeben muss.

Die andere Sache, die ich wirklich nicht herausfinden kann, ist, dass, wenn ich meine Funktion zum zweiten Mal aufrufe, die Eigenschaft textblock1.Text ordnungsgemäß aktualisiert wird! Es wird bei jedem Anruf außer dem ersten ordnungsgemäß aktualisiert! Ich habe Stunden mit MSDN verbracht, aber ich bin wirklich verwirrt. Außerdem kann ich das auf der Website lesen:

Die Text-Eigenschaft gibt einen Wert zurück (den angehängten Text aller Run-Elemente in der InlineCollection). Der zurückgegebene Wert enthält jedoch keine Formatierung, die auf die Run-Elemente angewendet wurde.

Ich habe meinen Code sehr sorgfältig überprüft und ein Debugging durchgeführt, um festzustellen, ob es einen anderen Ort gibt, an dem ich diese Eigenschaft manipuliere, aber ich habe keinen gefunden. Wenn jemand eine Idee hat, wird diese Sache für mich sinnlos ...

Antworten auf die Frage(1)

Ihre Antwort auf die Frage