将内部依赖项属性公开给主用户控件

时间:2011-03-14 16:39:29

标签: silverlight custom-controls dependency-properties

我在银光工作。 制作了一个名为TextBoxWithButton的新UserControl。 现在我想为我的新控件添加一个名为TextBoxBackground的新属性。

我这样做了:

public partial class TextBoxWithButton : UserControl
{
      public Brush TextBoxBackground
      {
           get{return textBox.Background;}
           set{textBox.Background = value;}         
      }
}

这很好用,但是当我尝试动画这个属性时,我得到一个例外。 我认为这是因为TextBoxWithButton应该被定义为依赖属性,但我不确切知道如何做到这一点。

1 个答案:

答案 0 :(得分:0)

您需要将其转换为依赖属性。有关实施DP的详细信息,请参阅Custom Dependency Properties

将此设置作为依赖项属性后,只需将(内部)TextBox.Background绑定到“本地”TextBoxBackground属性(在xaml中)。然后,您可以根据需要为UserControl的TextBoxBackground属性设置动画,“inner”属性也将更改。