我正在创建一个带有标题属性的自定义“PageHeaderControl”用户控件:
public partial class PageHeaderControl: UserControl
{
public static readonly DependencyProperty HeaderProperty =
DependencyProperty.Register("Header",
typeof(string), typeof(PageHeaderControl),
new PropertyMetadata(""));
public string Header
{
get { return GetValue(HeaderProperty) as string; }
set { SetValue(HeaderProperty, value); }
}
}
在该控件的 XAML 中,我有:
<sdk:Label Content="{Binding Header,Mode=TwoWay}" />
现在解决问题:当我创建控件时,绑定它仅适用于执行此操作:
<my:PageHeaderControl Header="This is my page header" />
这样做是行不通PageHeader
的,我的 ViewModel 中保存标头值的属性在哪里:
<my:PageHeaderControl Header="{Binding PageHeader,Mode=TwoWay}" />
我想也许我的属性搞砸了,但这也有效:
<TextBlock Text="{Binding PageHeader,Mode=TwoWay}" />
关于问题可能是什么的任何想法!
非常感谢!!!
编辑:
在我的 ViewModel 中,PageHeader 是这样的:
private string _pageHeader = "This is my page header";
public string PageHeader
{
get
{
return _pageHeader;
}
set
{
_pageHeader = value;
RaisePropertyChanged("PageHeader");
}
}
编辑2:
当我在我的属性的“get”中放置一个断点时PageHeader
,它根本不会被命中,除非我在 TextBlock 中添加......