我有具有TextInUserControl属性的用户控件。
UserControl1.cs
public UserControl1()
{
InitializeComponent();
TextInUserControl = "test";
//or something like SetValue(TextInUserControlProperty, "test");
}
我可以在mainwindow中绑定到这个属性,当我在mainwindow中更改此属性时,它也会在usercontrol中更新。这意味着正在完美地读取来自源的属性更改。但是如何在mainwindow中更改此属性以在用户控件中引入(来源)?
我正在尝试做但不工作的例子:
ftp://username:password@url
答案 0 :(得分:1)
如果要初始化文本,可以使用依赖项属性的默认值。您可以编写属性元数据,构造函数的第一个参数是默认属性值。请参阅下面的代码。
public partial class UserControl1 : UserControl
{
public static readonly DependencyProperty TextInUserControlProperty =
DependencyProperty.Register("TextInUserControl",
typeof(string),
typeof(UserControl1));
public string TextInUserControl
{
get { return (string)GetValue(TextInUserControlProperty); }
set { SetValue(TextInUserControlProperty, value); }
}
public UserControl1()
{
InitializeComponent();
this.SetValue(UserControl1.TextInUserControlProperty, "My Text");
}
}