Silverlight中的编程绑定

Moj*_*ter 7 .net c# data-binding silverlight

孩子们,我错过了这里的船.这一直在抬头,我不知道它发生了什么,所以我希望我的家乡可以提供帮助.

在Silverlight中工作时,当我在c#代码中创建绑定时,它们在应用程序运行时永远不会停滞不前.我的xaml的声明性绑定似乎没问题,但是当我在C#中创建绑定时,我做错了.我希望有一些令我眼花缭乱的东西让我失踪.这是一个被粉碎的典型绑定:

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);
Run Code Online (Sandbox Code Playgroud)

小智 7

我刚刚尝试了你刚刚发布的确切代码,它运行良好,有一些变化.我相信问题是您用于SetBinding调用的元素不是您要绑定的文本块.它应该是:

TextBlock tb = new TextBlock();
Binding b = new Binding("FontSize");
b.Source = this;
tb.SetBinding(TextBlock.FontSizeProperty, b);
Run Code Online (Sandbox Code Playgroud)

确保在"this"上还有一个double类型的FontSize公共属性.如果"this"是用户控件,我建议重命名属性,这样就不会隐藏继承的成员.


Moj*_*ter 2

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