我有一些带有视图模型的页面。使用 Frame.NavigationManager.Navigate()
方法,将一个 Page
显示在 Frame
中。
在其中一个 Page
页面中,我有一个包含子元素 DataGrid
的 GroupBox
。我想要根据 DataGrid
中的项目数量更改 GroupBox
的可见性。
以下是我的代码:
<GroupBox ....
Visibility="{Binding ElementName=SomeDataGrid,
Path=HasItems,
Converter={StaticResource BooleanToVisibilityConverter}}">
<DataGrid x:Name="SomeDataGrid"
IsReadOnly="True"
ItemsSource="{Binding Items}"/>
</GroupBox>
问题
在将Page
切换到其他页面并且返回时,出现以下绑定异常
System.Windows.Data Error: 4 : 找不到与引用匹配的绑定源
'ElementName=SomeDataGrid'. BindingExpression:Path=HasItems;
我尝试使用x:Reference
,但是出现了相同的问题。
请问有人能解释一下我做错了什么吗?