Silverlight中的程序绑定

时间:2020-03-05 18:55:50  来源:igfitidea点击:

孩子们,我想念这里的东西了。这一直抬着头,我不知道这是怎么回事,所以我希望我的家常人能帮上忙。

在Silverlight中工作时,当我在自己的ccode中创建绑定时,它们在应用程序运行时永远不会停滞。从我的xaml进行的声明式绑定似乎还可以,但是在C#中创建绑定时我做错了。我希望我缺少一些令人眼花obvious乱的明显东西。这是一个被压碎的典型绑定:

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);

解决方案

回答

我刚刚尝试了我们刚刚发布的确切代码,并且进行了一些更改,它可以正常工作。我相信问题是我们用于SetBinding调用的元素不是要绑定的文本块。它应该是:

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);

确保我们在" this"上还具有double类型的FontSize公共属性。如果" this"是用户控件,建议我们重命名该属性,以免隐藏继承的成员。

回答

至少从Silverlight 3.1开始,这不再是问题。我无法重现它。