1

アプリケーションの UI にリストがあり、ユーザーがリスト内の項目をクリックしたときにポップオーバーを開きたいと考えています。私が知る限り、これに役立つClickイベントはありません。ListViewItemユーザーはポップオーバーを閉じることができるため、SelectionChangedイベントも機能しません。最初にリスト内の別のアイテムを選択する必要なく、ポップオーバーを再度開くことができるようにしたいと考えています。

これは、私のListView作成コードがどのように見えるかです。

<ListView x:Name="_resultsListView"
          ItemsSource="{Binding AvailableResults}"
          SelectedItem="{Binding SelectedResult}"
          ItemContainerStyle="{StaticResource LoadResultItemStyle}"
          VirtualizingStackPanel.IsVirtualizing="True"
          Style="{DynamicResource DefaultListViewStyle}" BorderThickness="0"/>

ありがとう!任意の提案をいただければ幸いです。

4

2 に答える 2

1

HBが提案したことはうまくいきますが、バインドEventsするためのより永続的な解決策は、コマンドをほぼすべてのイベントにアタッチできるようにするAttachedCommandBehaviorCommandsを使用することです

<Style TargetType="{x:Type ListViewItem}">
    <Setter Property="local:CommandBehavior.Event" Value="Click" />
    <Setter Property="local:CommandBehavior.Command" Value="{Binding DataContext.MyCommand, ElementName=MyListView}" />
    <Setter Property="local:CommandBehavior.CommandParameter" Value="{Binding }" />
</Style>
于 2012-06-29T18:53:47.197 に答える
0

Buttonを に入れItemTemplate(またはでListViewItem.Template設定ItemContainerStyle)、コマンドにバインドします。必要に応じて非表示になるようにスタイルを設定できます。

于 2012-06-29T18:41:37.677 に答える