Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
WPF: Combobox в TreeView
|
|||
|---|---|---|---|
|
#18+
Всем привет! Я newbie в WPF, поэтому, пожалуйста, не забрасывайте камнями за глупые вопросы :-). Подскажите, как сделать так, чтобы при выборе какого-либо TreeviewItem-а, рядом с ним появлялся combobox. Заранее благодарствую! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2009, 18:03 |
|
||
|
WPF: Combobox в TreeView
|
|||
|---|---|---|---|
|
#18+
Этот ComboBox должен быть определен внутри TreeViewItem - например для выделенного TreeViewItem'а можно определить дополнительный template, содержащий ComboBox. Иначе это уже извращение :) Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2009, 18:55 |
|
||
|
WPF: Combobox в TreeView
|
|||
|---|---|---|---|
|
#18+
C шаблонами будет дублирование.Лучше через IsCollapsed.Посмотри пример на codeproject.Отличный ресурс с вопросами и ответами по программированию и WPF - stackoverflow.com.Там тоже было подобное решение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2009, 20:15 |
|
||
|
WPF: Combobox в TreeView
|
|||
|---|---|---|---|
|
#18+
Спасибо за советы! Я тут уже несколько дней пытаюсь сделать так, чтобы оный combobox показывался только рядом с selected TreeviewItem-ом (параллельно привязал дерево к XML файлу). Типа данные :-): <?xml version="1.0" encoding="utf-8" ?> <Root Name="Root"> <Node Name="AAA"> <ChildNode Name="aaa 1"/> <ChildNode Name="aaa 2"/> <ChildNode Name="aaa 3"/> </Node> <Node Name="BBB"> <ChildNode Name="bbb 1"/> <ChildNode Name="bbb 2"/> </Node> </Root> Типа код: <Window.Resources> <HierarchicalDataTemplate DataType="Node" ItemsSource="{Binding XPath=*}" x:Key="normal"> <TextBlock Text="{Binding XPath=@Name}"/> </HierarchicalDataTemplate> <HierarchicalDataTemplate DataType="Node" ItemsSource="{Binding XPath=*}" x:Key="selected"> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding XPath=@Name}"/> <ComboBox> <ComboBoxItem IsSelected="True">111</ComboBoxItem> <ComboBoxItem>222</ComboBoxItem> <ComboBoxItem>333</ComboBoxItem> </ComboBox> </StackPanel> </HierarchicalDataTemplate> <DataTemplate x:Key="normal1" DataType="ChildNode"> <TextBlock Text="{Binding XPath=@Name}"/> </DataTemplate> <DataTemplate x:Key="selected1" DataType="ChildNode"> <StackPanel Orientation="Horizontal"> <TextBlock Text="{Binding XPath=@Name}"/> <ComboBox> <ComboBoxItem IsSelected="True">111</ComboBoxItem> <ComboBoxItem>222</ComboBoxItem> <ComboBoxItem>333</ComboBoxItem> </ComboBox> </StackPanel> </DataTemplate> <Style TargetType="{x:Type TreeViewItem}" x:Key="ContainerStyle"> <Setter Property="HeaderTemplate" Value="{StaticResource normal}" /> <Style.Triggers> <Trigger Property="IsSelected" Value="True"> <Setter Property="HeaderTemplate" Value="{StaticResource selected}" /> </Trigger> </Style.Triggers> </Style> <XmlDataProvider x:Key="XmlNodeList" Source="XMLFile1.xml"/> </Window.Resources> <Grid> <TreeView ItemContainerStyle="{StaticResource ContainerStyle}"> <TreeViewItem Header="{Binding Source={StaticResource XmlNodeList}, XPath=/Root/@Name}" ItemsSource="{Binding Source={StaticResource XmlNodeList}, XPath=/Root/Node}" /> </TreeView> </Grid> Этот код проходит компиляцию, но падает в run time - грит Item has already been added. Key in dictionary: 'DataTemplateKey(Node)' Key being added: 'DataTemplateKey(Node)' Может оно и понятно почему, но делать то что? Подскажите убогому, что делать то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2009, 21:01 |
|
||
|
|

start [/forum/topic.php?fid=21&msg=35883542&tid=1443033]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 16ms |
| total: | 182ms |

| 0 / 0 |
