powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TreeView изменение фокуса
5 сообщений из 30, страница 2 из 2
TreeView изменение фокуса
    #36977652
Юлия86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник, я TreeView1 определяю в xaml. Тогда где мне определить GetContainerForItemOverride()?
...
Рейтинг: 0 / 0
TreeView изменение фокуса
    #36977673
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все намного сложнее, чем кажется.
1. нужно научить ItemClass делать INotifyPropertyChanged
2. нужно в xaml включить сборку, где есть TreeViewEx
3. в xaml вместо TreeView использовать TreeViewEx
4. иметь ViewModel, которая вернет IEnumerable<ItemClass> Items, причем желательно с поддержкой INotifyCollectionChanged
5. TreeViewEx ItemsSource={Binding Items}
6. контрол, в котором сидит TreeView, надо привязать к ViewModel: View.DataContext = ViewModel

это очень схематично, кривая обучения жестковата, но потом все будет намного проще и быстрее. ищите по форуму учебные ссылки по mvvm
...
Рейтинг: 0 / 0
TreeView изменение фокуса
    #36977769
Фотография Compositum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, что связать выделеный item из ListView с выделеным item из TreeView всё же можно... Навеное через SelectedValuePath, хотя я пока не смог (связать два ListView легко, а вот с TreeView пока не вышло)...
Это можно скопипастить и запустить:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:sys="clr-namespace:System;assembly=mscorlib"
        xmlns:col="clr-namespace:System.Collections;assembly=mscorlib"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        
        Title="MainWindow" Height="350" Width="525">   
    <Window.DataContext>        
        <col:ArrayList>
            <sys:String>Мама</sys:String>
            <sys:String>Папа</sys:String>
            <sys:String>Вася</sys:String>
            <sys:String>Петя</sys:String>
        </col:ArrayList>        
    </Window.DataContext>
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <GridSplitter Grid.Column="1" Width="5" HorizontalAlignment="Center" VerticalAlignment="Stretch" Grid.RowSpan="2"/>
        <ListView x:Name="list1" ItemsSource="{Binding Path=.}" Grid.Column="2" Grid.Row="1" Background="Coral"/>
        <ListView x:Name="list2" ItemsSource="{Binding ElementName=list1, Path=ItemsSource}" SelectedItem="{Binding ElementName=list1, Path=SelectedItem, Mode=TwoWay}" Background="Coral"/>
        <TreeView x:Name="tree" ItemsSource="{Binding ElementName=list1, Path=ItemsSource}" SelectedValuePath="{Binding ElementName=list1, Path=SelectedItem, Mode=TwoWay}" Grid.Row="1" Background="Aqua"/>
    </Grid>
</Window>

...
Рейтинг: 0 / 0
TreeView изменение фокуса
    #36978381
Юлия86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем! Буду думать :)
...
Рейтинг: 0 / 0
TreeView изменение фокуса
    #36980411
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
Юлия86Спасибо всем! Буду думать :)

что тут думать?! только MVVM решает все поставленные вопросы!
...
Рейтинг: 0 / 0
5 сообщений из 30, страница 2 из 2
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / TreeView изменение фокуса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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