我在一个WPF导航式应用程序中有一个页面,用于显示搜索结果。该页面包含多个数据绑定控件。页面本身运行良好;它执行搜索并返回结果。数据绑定的复选框控件正常工作。
但是,如果我单击结果链接,然后单击返回按钮返回到结果列表,则所有我的CheckBox.IsChecked数据绑定都会断开连接。其他数据绑定控件(ComboBoxes、DatePickers等)仍然按预期工作。绑定到CheckBox控件上的其他属性,如IsEnabled,正常工作。但是,IsChecked绑定仍然无法正常工作,直到我刷新页面。
以下是我其中一个CheckBox控件使用的XAML代码:
正如您所见,这里没有什么花哨的东西。但是,在前进或后退到页面的WPF应用程序中导航后,
更新:在尝试了一些替代方案后,我发现这个问题也影响到ToggleButton控件,它从CheckBox派生而来。
更新2:对于TextBox.Text属性也存在同样的问题。是否有一种方法可以“刷新”这些控件的数据绑定?还是我应该采取其他方法来解决这个问题?
但是,如果我单击结果链接,然后单击返回按钮返回到结果列表,则所有我的CheckBox.IsChecked数据绑定都会断开连接。其他数据绑定控件(ComboBoxes、DatePickers等)仍然按预期工作。绑定到CheckBox控件上的其他属性,如IsEnabled,正常工作。但是,IsChecked绑定仍然无法正常工作,直到我刷新页面。
以下是我其中一个CheckBox控件使用的XAML代码:
<CheckBox IsChecked="{Binding IncludeNote}" Content="Note" IsEnabled="{Binding IsBusy, Converter={StaticResource boolNot}}" />
正如您所见,这里没有什么花哨的东西。但是,在前进或后退到页面的WPF应用程序中导航后,
IsChecked
绑定将被破坏,而IsEnabled
属性将继续工作。发生了什么?这是一个错误吗?更新:在尝试了一些替代方案后,我发现这个问题也影响到ToggleButton控件,它从CheckBox派生而来。
更新2:对于TextBox.Text属性也存在同样的问题。是否有一种方法可以“刷新”这些控件的数据绑定?还是我应该采取其他方法来解决这个问题?