首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WPF绑定到CurrentItem

WPF绑定到CurrentItem
EN

Stack Overflow用户
提问于 2013-02-08 03:59:12
回答 1查看 327关注 0票数 1

我有一个WPF模型,其中包含一个viewsource、一个listview和一个按钮,该按钮用于在viewmodel中为在listview中选择的项执行ICommand。

代码语言:javascript
复制
<Window.Resources>
    <CollectionViewSource x:Key="teachingSessionsViewSource" d:DesignSource="{d:DesignInstance {x:Type local:TeachingSessionListItem}, CreateList=True}"/>
</Window.Resources>
...
    <GroupBox Header="All Sessions" 
              DataContext="{Binding Source={StaticResource teachingSessionsViewSource}}">
        <StackPanel>
            <ListView x:Name="TeachingSessionList" 
                      ItemsSource="{Binding}"
                      SelectedItem="{Binding Path=/}">
                <ListView.View>
                    <GridView ColumnHeaderContainerStyle="{StaticResource noHeaderStyle}">
                        <GridViewColumn DisplayMemberBinding="{Binding SessionDate}"/>
                        <GridViewColumn DisplayMemberBinding="{Binding PresenterInitials}" Width="30" />
                    </GridView>
                </ListView.View>
            </ListView>
            <Button Content="Un-Assign" Margin="5,5" Command="{Binding Path=/UnAssignPresentation}" 
        </StackPanel>
    </GroupBox>

问题是,无论在列表视图中选择了哪一项,ICommand UnAssignPresentation总是在列表中的第一项上执行。也就是说,CollectionViewSource的currentItem属性似乎没有绑定到ListView。

我做错了什么?非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-02-08 04:09:11

尝试将IsSynchronizedWithCurrentItem="True"添加到您的ListView。

此外,最好将listview绑定到视图模型中的集合,而不是绑定到资源。

然后,可以将属性添加到选定项的视图模型中

并将列表视图的选定项绑定到视图模型中的该属性

并将按钮的命令绑定到视图模型中作用于当前项的命令,

或者通过绑定到选定项的命令参数传递要操作的项。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14759915

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档