私のMVVMアプリケーションでは、MainViewModel呼び出されたオブジェクトにオブジェクトがありますProducts。CollectionViewまた、それらのナビゲーションを有効にする を作成しましたProducts。を表示する必要がありCollectionView.CurrentPositionます。
MainViewModel.cs
private CollectionView collectionView;
public CollectionView CollectionView
{
get { return this.collectionView; }
set
{
this.collectionView = value;
OnPropertyChanged(() => CollectionView);
}
}
public MainViewModel()
{
Products = fillProducts();
CollectionView = (CollectionView) CollectionViewSource.GetDefaultView(Products.Items);
}
のアイテムを表示しますProducts。
<TabItem x:Name="tabProductsView"
DataContext="{Binding Products.Items}"
Header="View Products">
<textBlock Text="{Binding ProductID}" />
<textBlock Text="{Binding ProductDesc}" />
<textBlock Text="{Binding ProductName}" />
...
<TextBlock name="CurrentItemPosition" Text ="{Binding CollectionView.CurrentPosition}"/>
</tabItem>
これで、 へのバインドProducts.Itemsはおそらく機能し、製品をナビゲートして詳細を表示できます。しかし、表示CollectionView.CurrentPositionが機能していない (何も表示されていない)DataContextため、穴の を既にTabItemProducts.Items に設定しています。の設定も機能DataContextしてCurrentItemPosition TextBlockいません。
CollectionView.CurrentPositionこの下に を表示する方法についてのアイデアはありますTabItemか?
つまり、同じ `TabItem 内のObjectから別のアイテムにバインドするにはどうすればよいでしょうか?MainViewModel
前もって感謝します。