如何在WPF中创建标签并动态添加对其内容属性的绑定

德罗·沙美特·科恩(Dror Samet Cohen)

我正在尝试在运行时创建标签,并将其Content属性连接到另一个名为TextBox我的控件中UserControlMyLabelSettings

这是我到目前为止所得到的:

Label currCtrl = new Label();
MyLabelSettings currCtrlProperties = new MyLabelSettings();

// Bindings to properties
Binding binding = new Binding();
binding.Source = currCtrlProperties.textBox_Text.Text;
binding.Path = new PropertyPath(Label.VisibilityProperty);
BindingOperations.SetBinding(currCtrl.Content, Label.ContentProperty, binding);

最后一行显示了一个错误,我没有弄清楚该如何解决:

最佳的重载方法匹配为'System.Windows.Data.BindingOperations。SetBinding(System.Windows.DependencyObject,System.Windows.DependencyProperty,System.Windows.Data.BindingBase)'具有一些无效的参数

我在MyLabelSettings执行INotifyPropertyChanged其中有以下代码时进行了TexBox.Text更改

private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
    InvokePropertyChanged(new PropertyChangedEventArgs("TextChanged"));
}

有没有更好的方法来绑定这两个?还是我在这件事上做错了什么?

谢谢!

詹姆斯·M

这个问题比您意识到的要简单:

这:

binding.Source = currCtrlProperties.textBox_Text.Text;
binding.Path = new PropertyPath(Label.VisibilityProperty);
BindingOperations.SetBinding(currCtrl.Content, Label.ContentProperty, binding);

应该是这样的:

//The source must be an object, NOT a property
binding.Source = currCtrlProperties;
//Since the binding source is not a DependencyObject, we using string to find it's property
binding.Path = new PropertyPath("TextToBind");
BindingOperations.SetBinding(currCtrl, Label.ContentProperty, binding);

以前,您试图通过属性将值绑定到对象的属性。现在,您通过一个对象(:将值绑定到对象的属性:

笔记:

  • 您试图绑定刚创建的类的实例中存在的控件的文本。

    MyLabelSettings currCtrlProperties = new MyLabelSettings();
    

    我以此假设为基础:

    currCtrlProperties.textBox_Text.Text;
    

    其中似乎包含某种文本控件。而是要绑定在您所创建的类的实例中存在属性的文本,而不是控件

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在动态添加的内容中绑定基因敲门事件中的事件?

来自分类Dev

动态创建的列表项及其内容的点击添加操作

来自分类Dev

如何在JavaScript中的动态内容内创建动态内容

来自分类Dev

如何在iframe中添加动态内容?

来自分类Dev

如何在VueJs中动态添加属性

来自分类Dev

如何在div中添加对象

来自分类Dev

如何在JSON中添加对象

来自分类Dev

如何在winform C#中为动态创建的标签添加计时器?

来自分类Dev

如何在小部件中访问ViewFlipper来动态填充其内容?

来自分类Dev

如何在WPF中动态绑定背景色?

来自分类Dev

如何在WPF/MVVC C#中实现动态绑定

来自分类Dev

如何在新动态添加的内容中添加类?

来自分类Dev

如何在angularjs中创建动态列表以及如何绑定

来自分类Dev

如何在WPF中将边框显示在其内容的顶部?

来自分类Dev

如何在Android应用程序中创建标签并动态添加标签(取决于匹配的用户)

来自分类Dev

如何在Windows Phone 8.1中创建适合其内容的弹出窗口?

来自分类Dev

如何在Angular2 +中向动态创建的元素添加属性?

来自分类Dev

WPF 如何将动态创建的复选框绑定到 LiveCharts 中动态创建的系列?

来自分类Dev

如何在 ios 中的 UIScrollView 中添加动态标签?

来自分类Dev

如何在Visual Studio WPF中绑定“发布版本”属性

来自分类Dev

如何在MVVM模式wpf中绑定StrokeDashArray属性

来自分类Dev

如何在Visual Studio WPF中绑定“发布版本”属性

来自分类Dev

如何在WPF中创建可重用的TextBlock绑定?

来自分类Dev

如何在WPF中创建与反斜杠键的键绑定?

来自分类Dev

如何在Tkinter中创建动态标签颜色?

来自分类Dev

如何在plsql中动态添加内容到数组

来自分类Dev

如何在iOS中创建具有动态内容的视图?

来自分类Dev

如何在jQuery中动态创建混合HTML内容

来自分类Dev

如何在我的用户控件中添加可绑定属性?

Related 相关文章

  1. 1

    如何在动态添加的内容中绑定基因敲门事件中的事件?

  2. 2

    动态创建的列表项及其内容的点击添加操作

  3. 3

    如何在JavaScript中的动态内容内创建动态内容

  4. 4

    如何在iframe中添加动态内容?

  5. 5

    如何在VueJs中动态添加属性

  6. 6

    如何在div中添加对象

  7. 7

    如何在JSON中添加对象

  8. 8

    如何在winform C#中为动态创建的标签添加计时器?

  9. 9

    如何在小部件中访问ViewFlipper来动态填充其内容?

  10. 10

    如何在WPF中动态绑定背景色?

  11. 11

    如何在WPF/MVVC C#中实现动态绑定

  12. 12

    如何在新动态添加的内容中添加类?

  13. 13

    如何在angularjs中创建动态列表以及如何绑定

  14. 14

    如何在WPF中将边框显示在其内容的顶部?

  15. 15

    如何在Android应用程序中创建标签并动态添加标签(取决于匹配的用户)

  16. 16

    如何在Windows Phone 8.1中创建适合其内容的弹出窗口?

  17. 17

    如何在Angular2 +中向动态创建的元素添加属性?

  18. 18

    WPF 如何将动态创建的复选框绑定到 LiveCharts 中动态创建的系列?

  19. 19

    如何在 ios 中的 UIScrollView 中添加动态标签?

  20. 20

    如何在Visual Studio WPF中绑定“发布版本”属性

  21. 21

    如何在MVVM模式wpf中绑定StrokeDashArray属性

  22. 22

    如何在Visual Studio WPF中绑定“发布版本”属性

  23. 23

    如何在WPF中创建可重用的TextBlock绑定?

  24. 24

    如何在WPF中创建与反斜杠键的键绑定?

  25. 25

    如何在Tkinter中创建动态标签颜色?

  26. 26

    如何在plsql中动态添加内容到数组

  27. 27

    如何在iOS中创建具有动态内容的视图?

  28. 28

    如何在jQuery中动态创建混合HTML内容

  29. 29

    如何在我的用户控件中添加可绑定属性?

热门标签

归档