我再次陷入了一些数据绑定问题。
这次我想将 a 绑定ListView
到SelectedItem
a 的GridView
。我已经成功使用了这种类型的数据绑定,但现在 myListView
应该显示有关我在 my 中所选项目的一些详细信息GridView
只是保持空白。尽管它们应该存在,但其中没有任何项目。
在 my 中的GridView
属性绑定就好了MainViewModel
。
用替换ElementName
属性x:Resouces
似乎不是一个选项,因为它也不起作用。
源码视图:
<GridView x:Name="gridViewOrderYears"
ItemsSource="{Binding SelectedCustOrders, Mode=TwoWay}"
HorizontalAlignment="Left"
Grid.Row="1"
VerticalAlignment="Top"
Width="316"
Height="63"
Margin="657,316,0,0"
SelectionMode="Single">
<GridView.ItemTemplate>
<DataTemplate>
<Grid>
<Border BorderThickness="1" BorderBrush="Aquamarine">
<StackPanel>
<TextBlock Text="{Binding Year}" FontSize="20"/>
<TextBlock Text="{Binding OrderCount}"/>
</StackPanel>
</Border>
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
此视图不绑定:
<ListView HorizontalAlignment="Left"
Height="231"
Margin="657,401,0,0"
Grid.Row="1"
VerticalAlignment="Top"
Width="316"
DataContext="{Binding SelectedItem, ElementName=gridViewOrderYears}">
<ListView.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding DoneOrders.Order_Date, ElementName=gridViewOrderYears}" />
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
SelectedCustOrders
财产是一个IList<OrderYears>
。
OrderYears
遵循 my 中定义的数据值对象MainViewModel
:
public class OrderYears
{
public int? Year { get; set; }
public IList<Orders> DoneOrders { get; set; }
public int OrderCount { get; set; }
}