连续单击时不显示列表视图上下文菜单

问题描述 投票:0回答:1

我正在使用WPF开发一个聊天应用程序(我是noobie),我创建了一个列表视图,以显示最近聊天的联系人,如下图所示。现在,我正在显示一个上下文菜单,以便用户可以离开/静音/添加联系人。发生的情况是,在执行某些操作后,使用此上下文菜单连续删除此列表中的联系人时,该列表不起作用。请在后面找到有关代码的代码,然后在下面查看

这是我的情况:

<ListView x:Name="StarredContactsList" Grid.Row="1" ItemsSource="{Binding Source={StaticResource StarredContacts}}" HorizontalAlignment="Stretch" Cursor="Hand"
    ItemContainerStyle="{StaticResource myLBStyle}" VerticalAlignment="Top" ScrollViewer.HorizontalScrollBarVisibility="Disabled" Margin="0,-5,0,0" MouseLeftButtonUp="OnSelect_StarredContact">
    <ListView.Resources>
    <ContextMenu x:Key="StarredListViewContextMenu" Background="White" StaysOpen="False" Margin="0,-15">
     <MenuItem Header="Close Conversation"  FontSize="12" Height="25" Visibility="{Binding IsPersonal,Converter={StaticResource BooleanToVisibilityConverter}}" Click="LeaveMenuItem_Click"/>
     <MenuItem Header="{Binding FullName}" HeaderStringFormat="Leave #{0}" Height="25" FontSize="12" Visibility="{Binding IsChannel, Converter={StaticResource BooleanToVisibilityConverter}}" Click="LeaveMenuItem_Click"/>
     <MenuItem FontSize="12" Header="{Binding MuteHeader}" Height="25" Click="MuteMenuItemClicked"/>
     <MenuItem FontSize="12" Header="Unstar Conversation" Height="25" Click="StarMenuItemClicked" Foreground="Black"/>
    </ContextMenu>
</ListView.Resources>

显示上下文菜单没有后面的内容

c# wpf listview contextmenu
1个回答
0
投票

正如我的评论中提到的,尝试这样的事情:

<ListView >
    <ListView.ItemTemplate>
        <DataTemplate>
            <ListViewItem>
                <ListViewItem.ContextMenu>
                    <ContextMenu >
                        <MenuItem />
                        <MenuItem />
                         ...
                    </ContextMenu>
                </ListViewItem.ContextMenu>
            </ListViewItem>
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>

我不知道这是否可以解决问题,所以请提一个建议:)

© www.soinside.com 2019 - 2024. All rights reserved.