Silverlight中的编程绑定

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

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

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”是用户控件,我建议重命名属性,这样就不会隐藏inheritance的成员。

它看起来像Silverlight 3.1,至少,这不再是一个问题。 无论如何,我无法重现它。