Контекстное меню представления списка не отображается при непрерывном нажатии - PullRequest
0 голосов
/ 06 февраля 2020

Я разрабатываю приложение чата с использованием WPF (в котором я нуб ie), я создал представление списка, чтобы показать контакты последних чатов, как показано на рисунке ниже. Теперь я отображаю контекстное меню, чтобы пользователь мог оставить / отключить / пометить контакт. здесь происходит то, что при постоянном удалении контактов из этого списка с помощью этого контекстного меню после некоторых операций оно не работает. пожалуйста, найдите код относительно кода и посмотрите ниже

Это мой сценарий:

<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>

для показа позади нет контекстное меню

я связал это выше контекстное меню следующим образом

1 Ответ

0 голосов
/ 07 февраля 2020

Как упоминалось в моем комментарии, попробуйте что-то вроде этого:

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

Я не знаю, исправит ли это, поэтому примите это предложение:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...