我的应用程序中有一个对话框,弹出主屏幕(实际上是按照Billy Hollis的应用程序演示在页面上显示的用户控件),该对话框包含要编辑的主屏幕中的数据.主屏幕是只读的.
我遇到的问题是,当我更改对话框中的数据时,主屏幕上的数据也会更新.显然它们绑定到同一个对象,但有没有办法停止绑定更新,直到我在对话框中单击保存?
Tho*_*que 10
你可以使用BindingGroup:
...
<StackPanel Name="panel">
<StackPanel.BindingGroup>
<BindingGroup Name="bindingGroup"/>
</StackPanel.BindingGroup>
<TextBox Text="{Binding Foo}"/>
<TextBox Text="{Binding Bar}"/>
<Button Name="btnSubmit" Content="Submit" OnClick="btnSubmit_Click"/>
<Button Name="btnCancel" Content="Cancel" OnClick="btnCancel_Click"/>
</StackPanel>
...
Run Code Online (Sandbox Code Playgroud)
代码背后:
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
panel.BindingGroup.BeginEdit();
}
private void btnSubmit_Click(object sender, RoutedEventArgs e)
{
panel.BindingGroup.CommitEdit();
panel.BindingGroup.BeginEdit();
}
private void btnCancel_Click(object sender, RoutedEventArgs e)
{
panel.BindingGroup.CancelEdit();
panel.BindingGroup.BeginEdit();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5761 次 |
| 最近记录: |