Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
ViewModel中的WPF C#文本框文本更改更新_C#_Wpf_Mvvm_Textbox - Fatal编程技术网

ViewModel中的WPF C#文本框文本更改更新

ViewModel中的WPF C#文本框文本更改更新,c#,wpf,mvvm,textbox,C#,Wpf,Mvvm,Textbox,你好,我正在从事一个简单的MVVM项目;一个简单的文本/配置编辑器,加载一个配置文件,然后在ViewModel中进行检查,如果文件已更改,它只需绑定一个布尔属性即可启用“保存”菜单项。但是这里出现了一个问题,我在textbox控件中找不到任何可以绑定到vm属性的属性,以防文本发生更改。我设法通过在代码隐藏中创建一个事件来模拟这一点: (DataContext as AnalizeSectionViewModel).ContentChanged = true; 任何文本更改都会触发该事件。但是我

你好,我正在从事一个简单的MVVM项目;一个简单的文本/配置编辑器,加载一个配置文件,然后在ViewModel中进行检查,如果文件已更改,它只需绑定一个布尔属性即可启用“保存”菜单项。但是这里出现了一个问题,我在textbox控件中找不到任何可以绑定到vm属性的属性,以防文本发生更改。我设法通过在代码隐藏中创建一个事件来模拟这一点:

(DataContext as AnalizeSectionViewModel).ContentChanged = true;
任何文本更改都会触发该事件。但是我想从textbox绑定一个属性,类似于:

IsModified="{Binding ContentChanged}"

可以这样做吗?

您应该能够通过绑定将文本文本框属性绑定到您的模型

Text="{Binding MyViewModelProperty}"
无论何时文本框中的文本发生变化,模型中的属性都会发生变化,这将允许您在发生变化时进行“填充”。当用户移动到字段外时,这将触发属性更改事件

现在,如果目的是让它在用户每次键入时触发,那么您可以显式地在

UpdateSourceTrigger="PropertyChanged"

通过将其设置为PropertyChanged,每次文本更改时都会收到通知。

您能提供更多信息吗?我搞不清楚你想干什么。也许您还可以提供更多的代码。例如,如果您向我们展示了您的
ContentChanged
属性,以及与此“
TextBox
”相关的更多XAML,那么它将排除一些事情。我正在尝试绑定一个TextBox的属性,当文本发生更改时,会将其绑定到一个VM布尔值。我无法向您提供代码,因为没有太多可显示的内容。