GridView控件的DoubleClick [英] GridView DoubleClick

查看:313
本文介绍了GridView控件的DoubleClick的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个GridView,我想在列表中的项目检测双击事件,我做如下:

 <&的ListView GT;
    < ListView.View>
        <&GridView的GT;
            < GridViewColumn标题=文件名>
                < GridViewColumn.CellTemplate>
                    <&DataTemplate的GT;
                        <标签内容={结合文件名}MouseDoubleClick =Configuration_MouseDoubleClick/>
                    < / DataTemplate中>
                < /GridViewColumn.CellTemplate>
            < / GridViewColumn>
            < GridViewColumn DisplayMemberBinding ={结合CreationDate}标题=日期/>
        < / GridView的>
     < /ListView.View>
< /&的ListView GT;

问题是,我只能给它附加到模板控制检测doubleclicks。

我怎么能附上 MouseDoubleClick 事件对整个 ListViewItem的?是否有与PRISM任何解决方案?


解决方案

您可以MouseDoubleClick事件在ItemContainerStyle添加到ListViewItem的这样

 < ListView控件...>
    < ListView.ItemContainerStyle>
        <风格的TargetType ={X:类型的ListViewItem}>
            < EventSetter事件=MouseDoubleClick处理器=ListViewItem_MouseDoubleClick/>
        < /样式和GT;
    < /ListView.ItemContainerStyle>
< /&的ListView GT;

后面..

code

 无效ListViewItem_MouseDoubleClick(对象发件人,MouseButtonEventArgs E)
{
    // ...
}

I have a GridView where I want to detect a doubleclick event on the items in the list, i do it as follows:

<ListView>
    <ListView.View >
        <GridView >
            <GridViewColumn Header="FileName">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                        <Label Content="{Binding FileName}" MouseDoubleClick="Configuration_MouseDoubleClick"/>
                    </DataTemplate>
                </GridViewColumn.CellTemplate>
            </GridViewColumn>
            <GridViewColumn DisplayMemberBinding="{Binding CreationDate}" Header="Date"/>
        </GridView>
     </ListView.View>
</ListView>

The problem is that I can only detect doubleclicks by attaching it to the control in the template.

How can I attach the MouseDoubleClick event to the whole ListViewItem? Is there any solution for that with PRISM?

解决方案

You can add the MouseDoubleClick event to ListViewItem in the ItemContainerStyle like this

<ListView ...>
    <ListView.ItemContainerStyle>
        <Style TargetType="{x:Type ListViewItem}">
            <EventSetter Event="MouseDoubleClick" Handler="ListViewItem_MouseDoubleClick"/>
        </Style>
    </ListView.ItemContainerStyle>
</ListView>

Code behind..

void ListViewItem_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
    //...            
}

这篇关于GridView控件的DoubleClick的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆