1. 程式人生 > >WPF對ListView的ListViewItem新增雙擊事件

WPF對ListView的ListViewItem新增雙擊事件

最近做了一個wpf的應用程式,其中主頁面是使用平鋪的卡片方式展示的,雙擊卡片的時候,可以開啟卡片相關的詳細。

問題出現了,在雙擊卡片的時候會崩潰,因為沒有選中任何卡片的時候,雙擊事件把整個DataView作為引數傳遞。

找到一個解決方案,就是隻對卡片設定雙擊事件,由於卡片是 Template 需要用到EventSetter,程式碼如下:

<UserControl.Resources>
    <Style x:Key="itemstyle" TargetType="{x:Type ListViewItem}">
        <EventSetter Event="MouseDoubleClick" Handler="HandleDoubleClick" />
    </Style>
</UserControl.Resources>
 
<ListView Name="TrackListView" ItemContainerStyle="{StaticResource itemstyle}">
</ListView>

protected void HandleDoubleClick(object sender, MouseButtonEventArgs e)
{
}

FROM:http://my.oschina.net/huxuanhui/blog/37685