Silverlight: как назначить значение свойства usercontrol для текстового поля?
У меня есть пользовательский элемент управления, который я добавил к внешней форме в Silverlight. У пользовательского элемента управления есть текстовое поле с именем txtRoleTitle, я объявил свойство в классе пользовательского элемента управления с именем lableName и назначил txtRoleTitle.text для labelName, как показано в приведенном ниже коде, на панели свойств silverlight, под разным меню, я установил labelName в "Лендлорд", затем добавил еще один из этого пользовательского элемента управления во внешнюю форму и установите для его labelName значение "Арендатор". Но, похоже, это не работает, когда я запускаю диалог Silverlight. Значение labelName не отображается в текстовом поле во время разработки и выполнения.
Вот мой код ниже. Спасибо
public partial class UserRoleDetails : UserControl
{
public string labelName { get; set; }
public UserRoleDetails()
{
InitializeComponent();
this.txtRoleTitle.Text = labelName;
}
}
3 ответа
Я посмотрел на решение проблемы зависимости собственности. Хотя, хотя это может работать, если все реализовано должным образом, для того, что я пытаюсь сделать, это излишнее решение. Итак, у меня есть простое решение, которое работает сейчас, см. Код ниже:
public partial class UserRoleDetails : UserControl
{
public string labelName
{
get {return this.txtRoleTitle.Text;}
set {this.txtRoleTitle.Text = value;}
}
public UserRoleDetails()
{
InitializeComponent();
}
}
Прежде всего, ваш класс должен реализовывать интерфейс INotifyPropertyChanged
Во-вторых, вы должны сделать свойство labelName как свойство notify.
В-третьих, вам следует привязать свойство text txtRoleTitle к свойству notify.
Хорошо, вы сделали.
Вы устанавливаете значение txtRoleTitle.Text в своем конструкторе, в точке назначения свойство labelName не будет иметь значения.
Я думаю, вам нужно взглянуть на то, как сделать свой labelName свойством зависимости и связать свой элемент управления txtRoleTitle в xaml пользовательского элемента управления. Посмотрите на этот пример: http://stevenhollidge.blogspot.co.uk/2012/03/dependency-properties-in-user-control.html