C# 设置文本框。文本不';更新绑定双向属性?

C# 设置文本框。文本不';更新绑定双向属性?,c#,wpf,data-binding,properties,C#,Wpf,Data Binding,Properties,如果文本框上的文本使用双向模式数据绑定到属性,并且我将文本设置为某个值,那么它应该更新属性,这有意义吗?当我在控件内键入时,我的属性会更新,但在代码中设置值时不会更新。我认为直接修改绑定文本属性是没有意义的。您的代码应该设置绑定的另一端,并允许绑定更新控件 如果在设置文本属性时更新绑定对象,则需要使用特殊情况代码来检测此类赋值何时是绑定对象因其他原因更改的结果。否则,您将得到一个无限循环。这是因为它只在文本框失去焦点时提交数据。是一个与此相关的问题。您不应该设置文本框的.Text值。。。设置其绑

如果文本框上的文本使用双向模式数据绑定到属性,并且我将文本设置为某个值,那么它应该更新属性,这有意义吗?当我在控件内键入时,我的属性会更新,但在代码中设置值时不会更新。

我认为直接修改绑定文本属性是没有意义的。您的代码应该设置绑定的另一端,并允许绑定更新控件


如果在设置文本属性时更新绑定对象,则需要使用特殊情况代码来检测此类赋值何时是绑定对象因其他原因更改的结果。否则,您将得到一个无限循环。

这是因为它只在文本框失去焦点时提交数据。是一个与此相关的问题。

您不应该设置文本框的.Text值。。。设置其绑定到的属性的值。:)

我鼓励您阅读更多有关设计视图的模型-视图-视图-模型方法的信息。在进行此类工作时,它会将关注点清晰地分开。您之所以看到关于焦点的这个“bug”,导致绑定刷新,是因为大多数时候这种事情是不合适的


这里有一个关于MVVM的非常好的视频介绍:

这个问题来自于我正在通过编程方式添加/删除数据绑定的一些工作。我发现,每当我在代码中设置绑定时,它都会将绑定到的属性和文本框设置为空字符串。当我再次设置数据绑定时,我希望文本框中的文本设置为属性,而不是相反。为什么我首先要删除数据绑定?因为属性会不断更新,我不希望文本框在焦点位置时更改文本。也许你应该在问题本身中包含这些细节,也许还需要一些代码。