您好我正在使用Silverlight中的Win 8 metro应用程序。
我有两个控件Control1和Control2
Control2在Control1内部
Control2有一个列表视图,Control1有按钮。单击列表视图必须禁用Control1中的按钮。
我试图通过使用
从代码中实现这一点 public bool OverriddenFlag
{
get { return _overriddenFlag; }
set
{
_overriddenFlag= value;
NotifyPropertyChanged("OverriddenFlag");
}
}
和xaml
<Button x:Name="ShowDetails" FontWeight="bold" FontSize="12" Content="+" click="ShowDetails_Click" IsEnabled="{Binding OverriddenFlag, Mode=OneWay}"/>
但它没有禁用该按钮。 如何禁用按钮。有什么想法吗?
答案 0 :(得分:0)
OverridenFlag应该是Control2中的依赖属性,如下所示:
public static readonly DependencyProperty OverriddenFlagProperty = DependencyProperty.Register("OverriddenFlag",
typeof(bool), typeof(Control2), null);
public bool OverriddenFlagProperty
{
get { return (bool)GetValue(OverriddenFlagProperty); }
set
{
SetValue(OverriddenFlagProperty, value);
}
}
然后尝试将绑定修改为:
<Button x:Name="ShowDetails" IsEnabled="{Binding OverriddenFlag, ElementName=Control2}"/>