powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TreeViewItem + DoubleClick
18 сообщений из 18, страница 1 из 1
TreeViewItem + DoubleClick
    #37772310
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Подскажите как правильно подвесить обработчик на TreeViewItem событий далбклика. Даже желательно команду.

Например:
<EventSetter Event="MouseDoubleClick" Handler="TreeViewItem_MouseDoubleClick"/>
вызывается и для каждого родительского элемента в дереве, а в обработчке e.Handled=true не помогает((

А InputBindings в стиле нельзя указать(использует иерарх. шаблон данных для дерева)
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772360
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772373
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SeVa, спасибо

А без бленда?
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772412
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772440
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ууу... как все печально...

Тогда немного другой вопрос:

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
 
       <HierarchicalDataTemplate  x:Key="TreeViewDataTemplate" ItemsSource="{Binding ChildObjects}">
                <StackPanel>
                    <TextBlock x:Name="Title_tbl" Text="{Binding CompanyObject.Title}"/>
						<i:Interaction.Triggers>
                        		<i:EventTrigger EventName="MouseDoubleClick">
                        			<i:InvokeCommandAction Command="{Binding ...}"/>
                        		</i:EventTrigger>
                        	</i:Interaction.Triggers>
                </StackPanel>
       </HierarchicalDataTemplate>



Как достучаться отсюда до Tag TreeViewItem. (в нем лежит датаконтекст, в котором находится команда)

<i:InvokeCommandAction Command="{Binding Path=Tag.OpenDepartmentDialogCommand, RelativeSource={RelativeSource Self}}"/>
так что-то не то...
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772460
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть CommandParameter
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772467
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SeVa,

надо не параметр, а саму команду вытащить.
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772478
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Command="{Binding Tag.OpenDepartmentDialogCommand}"
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37772484
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Self дает привязку к TextBlock
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37773295
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SeVa,

Все равно не помогает. Просто это ж все лежит в DataTemplate и источником идет датаконтект. А в нем свойства Tag нет, оно же визуальному элементу относится...
Если бы запихнуть в стиль TreeViewItem'а, а не шаблон..
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37773316
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Временно добавил команду в сам объект

Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 <HierarchicalDataTemplate  x:Key="TreeViewDataTemplate" ItemsSource="{Binding ChildObjects}">
            <Grid>
                <TextBlock x:Name="Title_tbl" Text="{Binding Title}"/>
                <i:Interaction.Triggers>
                    <i:EventTrigger EventName="MouseDoubleClick">
                        <i:InvokeCommandAction Command="{Binding Path=MyCommand}"/>
                    </i:EventTrigger>
                </i:Interaction.Triggers>
            </Grid>
          </HierarchicalDataTemplate>



Все равно не работет...
через евент в обработчике все норм(за исключением повторений для каждого узла):
((sender as treeViewItem).Header as ...).MyCommand.Execute(null)
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37773356
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sky Dragon,

где реализована вызываемая вами команда?
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37773388
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
уТКа,

Сейчас в объектах, содержащихся в "ChildObjects". Там же и свойство Title лежит. То есть в датаконтексте TreeViewItem'а

А вообще в классе, в котором содержится список объектов, который в ItemsSource дерева кидается.
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37773865
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sky Dragon,

тогда странно, может событие не отрабатывается, попробуйте привязать на одиночный клик, и на всякий смотрите окно Output в VS, там обычно пишутся ошибки биндинга.
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37774262
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
уТКа,

Посмотрел(первый раз в жизни этим окном воспользовался :) ), ничего похожего не нашел. Ошибки конечно там были, но другие. А с деревом ничего связанного не увидел.

http://forums.silverlight.net/t/220213.aspx/1 - вроде написано, что этот InvokeCommandAction не аттачится к HierarchicalDataTemplate в приницпе... Как раз аналогичная проблема
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37775042
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делай видимым button, когда item в фокусе и не мучься. По мне, так это более внятный вариант.
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37775055
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
TreeViewItem + DoubleClick
    #37775424
Sky Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SeVa,

чего то примеры с ошибками падают.. разные Frameworkи ит т.д. Да не важно.

Кнопка есть. Нужен именно даблклик(как открыть файл, например)...
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TreeViewItem + DoubleClick
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]