这就是我本质上想要的。
AUserControl
with a TextBlock
whose Text
属性绑定到Prop
的财产UserControl
。 (这只是我实际问题的代表)
下面是我的一部分UserControl
(ClientDetailsControl.xaml
)
<TextBlock Text="{Binding Prop}" />
接下来是ClientDetailsControl.xaml.cs
public partial class ClientDetailsControl : UserControl
{
public static DependencyProperty PropProperty = DependencyProperty.Register("Prop", typeof(String), typeof(ClientDetailsControl));
public String Prop { get; set; }
public ClientDetailsControl()
{
InitializeComponent();
DataContext = this;
}
}
现在,在我的 WPF 主窗口中(NewOrder.xaml
)我正在用这个UserControl
作为
<userControl:ClientDetailsControl Prop="{Binding MyProp}" />
The MyProp
属性声明如下NewOrder.xaml.cs
public String MyProp { get { return "HELLO"; } }
当我运行此代码时,出现以下错误:
BindingExpression 路径错误:在“对象”上找不到“MyProp”属性
''ClientDetailsControl'(名称='')'。 BindingExpression:Path=MyProp;
DataItem='ClientDetailsControl'(名称='');目标元素是
'ClientDetailsControl'(名称='');目标属性是“Prop”(类型
'细绳')
当我简单地写
<userControl:ClientDetailsControl Prop="ABCD" />
有用。但是,当我尝试绑定Prop
的财产UserControl
to MyProp
它不起作用。
我该如何做这个工作?