0

在我的 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孔设置TabItem为 Products.Items。也设置的DataContext不起作用CurrentItemPosition TextBlock

关于如何CollectionView.CurrentPosition在此下显示的任何想法TabItem

换句话说,我将如何ObjectMainViewModel同一个“TabItem”中绑定到另一个?

提前致谢。

4

1 回答 1

0

好的,我尝试直接绑定到 CollectionView 本身,现在一切正常......

于 2013-02-07T12:26:31.013 回答