WPF ListView GridViewColumn Двойной щелчок - PullRequest
0 голосов
/ 04 февраля 2010

У меня есть WPF ListView, который открывает определенное окно при двойном щелчке по определенному элементу в представлении списка, но у меня есть проблема. Когда я дважды щелкаю GridViewColumn, это также открывает определенное окно. Есть ли способ определить, является ли отправитель gridviewColumn или элементом listView? Спасибо

Ответы [ 2 ]

3 голосов
/ 04 февраля 2010

Я полагаю, вы обрабатываете событие MouseDoubleClick для ListView?Вместо этого вы должны обрабатывать это событие на ListViewItem, а не на ListView.Вы можете легко это сделать, установив обработчик событий в ListView s ItemContainerStyle:

...
<ListView ...>
    <ListView.ItemContainerStyle>
        <Style TargetType="{x:Type ListViewItem}">
            <EventSetter Event="MouseDoubleClick" Handler="YourHandler" />
        </Style>
    </ListView.ItemContainerStyle>
</ListView>
...
0 голосов
/ 04 февраля 2010

в вашем обработчике событий у вас обычно есть два аргумента, первый - ваш объект отправителя, второй - ваш объект EventArguments.

Вы можете проверить объект отправителя для типа с помощью оператора "is":

private void MyEvent(object sender,EventArgs args )
{
    if ( sender is GridView ) dothis();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...