WPF中的文本框绑定更新

One*_*mir 55 c# data-binding wpf xaml

仅当我点击另一个控件时,MessageText属性才会更新.更重要的是,如果我按下任何按钮,它的Click处理程序不会执行,而是执行MessageText集.我打破了我的头脑.

<TextBox x:Name="messageText" Grid.Row="1" Grid.Column="0"
         TextWrapping="Wrap" Text="{Binding Path=MessageText, Mode=TwoWay}"/>
Run Code Online (Sandbox Code Playgroud)
private void ChatView_Loaded(object sender, RoutedEventArgs e)
{
    DataContext = viewModel;
}
Run Code Online (Sandbox Code Playgroud)
public string MessageText
{
    get
    {
        return this.messageText;
    }
    set
    {
        this.messageText = value;
        OnProperyChanged("MessageText");
    }
}
Run Code Online (Sandbox Code Playgroud)

Agh*_*oub 134

您可以将UpdateSourceTrigger调整为PropertyChanged

<TextBox x:Name="messageText" Grid.Row="1" Grid.Column="0"
                 TextWrapping="Wrap" Text="{Binding Path=MessageText, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
Run Code Online (Sandbox Code Playgroud)