WPF 绑定到值类型

本文关键字:类型 绑定 WPF | 更新日期: 2023-09-27 18:33:59

如果我希望 WPF 绑定到int,我应该指定什么绑定路径?我能做到吗?

TextBox textBox = new TextBox();
textBox.DataContext = myValueType;
textBox.SetBinding(TextBox.TextProperty, new Binding("what do I put here?");

WPF 绑定到值类型

如果我清楚地理解你,你可以写这样的东西来将int myValueType属性绑定到文本框Text

textBox.SetBinding( TextBox.TextProperty, new Binding( "DataContext" ) 
  { RelativeSource= new RelativeSource( RelativeSourceMode.Self ) } );

是的,你可以:

TextBox textBox = new TextBox();
textBox.DataContext = this;
textBox.SetBinding(TextBox.TextProperty, new Binding("myValueType"));

这里的DataContext变量是包含myValueType属性的对象。如果属性是在同一类中声明的,则可以使用 this

如果您不想设置TextBoxDataContext,则可以使用:

textBox.SetBinding(TextBox.TextProperty, new Binding("myValueType") { Source = TheObjectThatContainsMyValueProperty });

如果您没有被迫使用隐藏的代码,则首选 xaml 代码。在 xaml 中编写和理解这些东西更容易。