1

mouseUpイベントによってトリガーされる関数があります。mouseUpイベントが検出されない場合があることを除いて、すべてが正常に機能します。実際、私はアイテムを含むリストビューを持っており、アイテムを選択すると、関数がトリガーされます。しかしいつもではない。

<ListView Margin="4" Grid.Row="1" Grid.ColumnSpan="2" x:Name="statinfoListview" 
  ItemsSource="{Binding Path=ExistingStateInfos, ElementName=Window}"
  SelectedItem="{Binding Path=SelectedStateInfo, ElementName=Window}">
    <ListView.ItemTemplate>
        <DataTemplate DataType="{x:Type States:StateInfo}">
            <TextBlock Text="{Binding Path=Name}" MouseUp="ApplyStateInfoNameToState_Click" />
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>
4

2 に答える 2

2

おそらく、ボタンを離す前に、マウスをテキストブロックから引き出しますか?また、テキストの右側にいる場合は、テキストブロックをクリックしていない可能性があることに注意してください。リストビューにHorizo​​ntalContentAlignment="Stretch"を追加すると役立つ場合があります。

于 2012-10-12T15:08:57.677 に答える
0

イベントはVisualTreeの子孫ビジュアルで処理できるため、MouseUpハンドラーが呼び出されるという保証はありません。イベントを確実にキャッチしたい場合は、トンネリングイベント(PreviewMouseUp)を使用する必要があります。

もう1つの方法は、コードビハインドでAddHandlerメソッドを使用し、処理されたイベントを管理することを指定することです。

于 2012-10-12T14:57:20.143 に答える