Re: [WPF] Связываение TreeView и treeviewitem[]
От: Sinatr Германия  
Дата: 11.12.15 07:53
Оценка: +1
Здравствуйте, dinosaurx, Вы писали:

D>Не пойму как сделать биндинг в xaml.


Элементарно, см. HierarchicalDataTemplate.

Разговаривать далее бесполезно пока не покажите тип структуры. Ну или просто начните копать отсюда (первый результат гугла по называнию темы).
---
ПроГLамеры объединяйтесь..
[WPF] Связываение TreeView и treeviewitem[]
От: dinosaurx  
Дата: 07.12.15 13:03
Оценка:
на входе имею массив treeviewitem[] — это древовидная рекурсивная структура данных. Необходимо отобразить её в TreeView. Не пойму как сделать биндинг в xaml.
Re: [WPF] Связываение TreeView и treeviewitem[]
От: DarthSidius  
Дата: 08.12.15 05:58
Оценка:
Здравствуйте, dinosaurx, Вы писали:

D>на входе имею массив treeviewitem[] — это древовидная рекурсивная структура данных. Необходимо отобразить её в TreeView. Не пойму как сделать биндинг в xaml.


Для начала, надо взглянуть на код древовидной (да еще и рекурсивной ) структуры данных.
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[2]: [WPF] Связываение TreeView и treeviewitem[]
От: dinosaurx  
Дата: 08.12.15 10:20
Оценка:
Здравствуйте, DarthSidius, Вы писали:

DS>Здравствуйте, dinosaurx, Вы писали:


D>>на входе имею массив treeviewitem[] — это древовидная рекурсивная структура данных. Необходимо отобразить её в TreeView. Не пойму как сделать биндинг в xaml.


DS>Для начала, надо взглянуть на код древовидной (да еще и рекурсивной ) структуры данных.


Так в этом всё и дело. Есть сторонняя библиотека, которая возвращает дерево в виде массива treeviewitem[]. Мне нужно это как-то отобразить... Где подложить этот массив в TreeView я не нашёл
Re[3]: [WPF] Связываение TreeView и treeviewitem[]
От: DarthSidius  
Дата: 08.12.15 10:31
Оценка:
Здравствуйте, dinosaurx, Вы писали:

D>Так в этом всё и дело. Есть сторонняя библиотека, которая возвращает дерево в виде массива treeviewitem[]. Мне нужно это как-то отобразить... Где подложить этот массив в TreeView я не нашёл


Ну есть такие проги как JetBrains dotPeek. Там можно всю эту сторонюю библиотеку рассмотреть в удобоваримом виде на C#.
В TreeView только два способа: Items и ItemsSource.
В TreeViewItem может быть все что угодно.
Попробуй ItemsSource для начала.
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re[4]: [WPF] Связываение TreeView и treeviewitem[]
От: dinosaurx  
Дата: 09.12.15 11:47
Оценка:
Здравствуйте, DarthSidius, Вы писали:

DS>Здравствуйте, dinosaurx, Вы писали:


D>>Так в этом всё и дело. Есть сторонняя библиотека, которая возвращает дерево в виде массива treeviewitem[]. Мне нужно это как-то отобразить... Где подложить этот массив в TreeView я не нашёл


DS>Ну есть такие проги как JetBrains dotPeek. Там можно всю эту сторонюю библиотеку рассмотреть в удобоваримом виде на C#.

DS>В TreeView только два способа: Items и ItemsSource.
DS>В TreeViewItem может быть все что угодно.
DS>Попробуй ItemsSource для начала.

Уже пробовал...
Re[5]: [WPF] Связываение TreeView и treeviewitem[]
От: DarthSidius  
Дата: 11.12.15 01:56
Оценка:
Здравствуйте, dinosaurx, Вы писали:

D>Здравствуйте, DarthSidius, Вы писали:


DS>>Здравствуйте, dinosaurx, Вы писали:


D>>>Так в этом всё и дело. Есть сторонняя библиотека, которая возвращает дерево в виде массива treeviewitem[]. Мне нужно это как-то отобразить... Где подложить этот массив в TreeView я не нашёл


DS>>Ну есть такие проги как JetBrains dotPeek. Там можно всю эту сторонюю библиотеку рассмотреть в удобоваримом виде на C#.

DS>>В TreeView только два способа: Items и ItemsSource.
DS>>В TreeViewItem может быть все что угодно.
DS>>Попробуй ItemsSource для начала.

D>Уже пробовал...


Обычно массив TreeViewItem, TreeView берет без проблем, даже без HierarchicalDataTemplate
... << RSDN@Home (RF) 1.2.0 alpha 5 rev. 58>>
♠♠♥♠♠♦♥
Re: [WPF] Связываение TreeView и treeviewitem[]
От: Peter Fleischer Германия www.informtoools.de
Дата: 26.12.15 08:56
Оценка:
Здравствуйте, dinosaurx, Вы писали:

D>на входе имею массив treeviewitem[] — это древовидная рекурсивная структура данных. Необходимо отобразить её в TreeView. Не пойму как сделать биндинг в xaml.


<Window x:Class="WpfApplication1CS.Window16"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApplication1CS"
        mc:Ignorable="d"
        Title="Window16" Height="300" Width="300">
  <Grid>
    <TreeView Name="tv" Loaded="tv_Loaded"/>
  </Grid>
</Window>


using System;
using System.Windows;
using System.Windows.Controls;

namespace WpfApplication1CS
{
  /// <summary>
  /// Interaction logic for Window16.xaml
  /// </summary>
  public partial class Window16 : Window
  {
    public Window16()
    {
      InitializeComponent();
    }

    Random rnd = new Random();
    int n = 1;

    private void tv_Loaded(object sender, RoutedEventArgs e)
    {
      foreach (var item in GetTreeViewItemArray())
      {
        tv.Items.Add(item);
      }
    }

    TreeViewItem[] GetTreeViewItemArray()
    {
      TreeViewItem[] arr = new TreeViewItem[rnd.Next(5, 10)];
      for (int i = 0; i <= arr.GetUpperBound(0); i++)
      {
        arr[i] = NewNode();
      }
      return arr;
    }

    TreeViewItem NewNode()
    {
      TreeViewItem tvi = new TreeViewItem() { Header = $"Node {n}" };
      n++;
      if (rnd.NextDouble() > .65)
      {
        for (int i = 0; i < rnd.Next(2, 6); i++)
        {
          tvi.Items.Add(NewNode());
        }
      }
      return tvi;
    }
  }
}
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.