2016-08-09 126 views
0

Ich starten nur WPF zu lernen und eine Fragen haben:Wie überprüft man, dass der Text geändert wird?

My Datacontext ist einige XElement mit dem Attribut str, in Markup-I hinzugefügt:

 <TextBox x:Name="NumStr" HorizontalAlignment="Left" Height="23" Margin="10,257,0,0" TextWrapping="Wrap" Text="{Binding Path = Attribute[str].Value}" VerticalAlignment="Top" Width="120"/> 

Nun, wenn Text in NumStr geändert wird, ich erstellen möchten einige Code:

if (element.Attribute("str")?.Value != NumStr.Text && NumStr.Text != "") 
       ContentFormControl.AddNumStr(fullPath, NumStr.Text); 

Aber Text in element.Attribute ("str") ?. Wertänderung zugleich mit NumStr.Text. Wie ich richtig nachprüfen kann, dass Text eine Änderung ist. Erstelle eine andere Variable, die ich nicht werde.

Danke für die Antworten und Entschuldigung für mein Englisch.

+0

Wenn str Attributwert wird nicht ändern ändern aktualisiert werden, es lösen mein Problem –

Antwort

2

Ändern Sie die Eigenschaft Text auf OneWay Bindung:

Text="{Binding Path=Attribute[str].Value, Mode=OneWay}" 

auf diese Weise die Quelleigenschaft wird nicht jedes Mal, wenn Sie den Text der TextBox

+0

Vielen Dank. Es klappt –