我有2个WPF表格。 在form1中,我有2个按钮(添加,编辑)和form2,3个字段。当我点击2个按钮中的1个打开form2。如何点击第二个表单中的添加按钮,所有字段都是'IsEnabled =“True”',但是当我点击修改时按钮,1字段为 IsEnabled =“False”以第二种形式!? 10X
答案 0 :(得分:0)
首先,创建一个公共bool
属性以绑定到:
private bool canEdit = false;
public bool CanEdit
{
get { return canEdit; }
set { canEdit = value; NotifyPropertyChanged("CanEdit"); }
}
然后将其绑定到IsEnabled
控件的TextBox
属性:
<TextBox IsEnabled="{Binding CanEdit, RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type YourXmlNamespace:YourParentForm}}}" />
然后在true
处理程序或Click
处理程序中将其设置为Command
,以启用TextBox
控件:
CanEdit = true; // Makes TextBox.IsEnabled = true
注意:
您可能更愿意为您的一个控件添加另一个bool
属性,该属性应在单击编辑按钮时启用。此外,可能更喜欢使用IsReadOnly
属性而不是IsEnabled
。
更新&gt;&gt;&gt;
我假设您的第二个表单是从您的第一个表单启动的,或者它们都是从其他地方启动的......在这种情况下,您可以将该属性添加到父表单并从子表单绑定到它我在示例中显示的RelativeSource
绑定的表单。
你可以绑定