Привязка класса к WPF Treeview - PullRequest
0 голосов
/ 27 июня 2011

У меня есть объект, который содержит наблюдаемую коллекцию Я пытаюсь обернуть мою голову, как совать все это в дерево. Таким образом, основным объектом будет родитель, а элементы в наблюдаемой коллекции - дочерние. В настоящее время класс имеет свойство публичной строки, которое может быть связано с заголовком. Вот части класса:

public class ServerObject : INotifyPropertyChanged
{
    private string _serverName;
    ObservableCollection<string> _instanceList;

    public ObservableCollection<string> InstanceList
    {
        get { return _instanceList; }
    }

    public string ServerName
    {
        get { return _serverName; }
        set
        {
            _serverName = value;
            RaisePropertyChanged("ServerName");
        }
    }

    public ServerObject(string name, string version)
    {

        ServerName = name;
        _instanceList = new ObservableCollection<string>();
    }
}

Заранее спасибо.

1 Ответ

1 голос
/ 27 июня 2011

Самый простой способ сделать это с помощью HierarchicalDataTemplates.Определите два или более шаблонов.В строке объявления шаблона добавьте индикатор типа для вашего объекта.Кроме того, добавьте атрибут ItemsSource, который указывает на следующий уровень вниз.

<HierarchicalDataTemplate Datatype="{x:Type local:mySerberObject}" ItemsSource="{Binding InstanceList}"/>

Привязать коллекцию верхнего уровня к древовидной структуре, и вы должны быть выключены и работать.Разработайте шаблоны данных на свой вкус.

Если вы в настоящее время используете MVVM (или планируете начать его использовать), перейдите по ссылке ниже для действительно хорошей статьи о с использованием деревас МВВМ .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...