Предоставьте свойство внутренней зависимости основному пользовательскому элементу управления - PullRequest
0 голосов
/ 14 марта 2011

Я работаю в Silverlight.Сделал новый UserControl под названием TextBoxWithButton.Теперь я хочу добавить новое свойство в мой новый элемент управления с именем TextBoxBackground.

Я сделал это:

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

Это работает нормально, но когда я пытаюсь анимировать это свойство, я получаю исключение.Я думаю, это потому, что TextBoxWithButton должен быть определен как свойство зависимости, но я точно не знаю, как это сделать.

1 Ответ

0 голосов
/ 14 марта 2011

Вам нужно превратить это в свойство зависимости.Для получения дополнительной информации о реализации DP см. Пользовательские свойства зависимостей .

Как только эта настройка будет установлена ​​в качестве свойства зависимости, просто привяжите свой (внутренний) TextBox.Background к «локальному» свойству TextBoxBackground(в xaml).Затем можно при необходимости анимировать свойство TextBoxBackground элемента UserControl, и свойство «inner» также изменится.

...