0
我想將MouseDoubleClick(或PreviewMouseDoubleClick)綁定到我的自定義命令中,該命令在我的自定義WPF控件中定義。ListBox MouseBinding to Command not working
問題是它不起作用。
...
<Popup>
...
<!--This CommandBinding **DOES NOT WORK** !-->
<ListBox Grid.Row="1"
x:Name="PART_lBox"
VirtualizingStackPanel.IsVirtualizing="True"
DisplayMemberPath="{TemplateBinding DisplayMemberPath}"
ItemsSource="{TemplateBinding ItemsSource}">
<ListBox.InputBindings>
<MouseBinding Command="{x:Static local:ListPicker.AcceptCommand}"
MouseAction="LeftDoubleClick" />
</ListBox.InputBindings>
</ListBox>
<!--This CommandBinding **WORKS** !-->
<Button Grid.Row="0"
Grid.Column="1"
HorizontalAlignment="Right"
Command="{x:Static local:ListPicker.AcceptCommand}"
Content="Accept" />
...
</Popup>
沒有直接的方法。但是,您可以通過創建自定義點擊處理程序來實現此目的。 我所做的是,我有一個點擊計數器類,每調用一次click方法就會啓動一個計時器。當在給定時間內收到點擊時,它會增加點擊次數。對於我來說,每次點擊之間的時間間隔爲2000毫秒。如果你想知道做了多少次正確的點擊。您需要使用該類的ClickCount屬性。 我不得不使用它來執行單擊,雙擊和三擊的不同操作。 HTH – 2010-08-21 14:14:21