【发布时间】:2012-01-25 01:04:03
【问题描述】:
我有一个用户控件在绑定到 IsEnabled 的依赖项属性时遇到问题。我也尝试过手动设置 IsEnabled="false",但这似乎也不起作用。
代码如下:
public partial class News : UserControl
{
public static readonly DependencyProperty IsAuthenticatedProperty =
DependencyProperty.Register(
"IsAuthenticated",
typeof(bool),
typeof(News),
new FrameworkPropertyMetadata(
new PropertyChangedCallback(ChangeAuth)));
public bool IsAuthenticated
{
get
{
return (bool) GetValue(IsAuthenticatedProperty);
}
set
{
SetValue(IsAuthenticatedProperty, value);
}
}
private static void ChangeAuth(DependencyObject source, DependencyPropertyChangedEventArgs e)
{
if (e.NewValue is bool == false)
{
(source as News).UpdateAuth(false);
}
else
{
(source as News).UpdateAuth(true);
}
}
private void UpdateAuth(bool value)
{
IsAuthenticated = value;
}
public News()
{
IsAuthenticated = false;
this.IsEnabled = false;
InitializeComponent();
}
有什么想法吗?提前致谢
【问题讨论】:
标签: c# wpf dependency-properties