powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / treeview binding интерфейса
5 сообщений из 5, страница 1 из 1
treeview binding интерфейса
    #37922166
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. есть вот такой интерфейс.
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
    
public interface IClassObject
    {
         void DeleteObject();
         //int return_base_key();
         BaseObj return_baseObj();
         bool return_base_Any();
         string return_name_object();
         List<IClassObject> return_child();
         IClassObject return_parent();
    }


return_child() возвращает коллекцию такого же класса. Максимум оно может быть трёх-уровневым. return_name_object() возвращает имя объекта. Тут нет ничего хранящегося. Все функции лезут в базу.
как это можно забиндить в TreeView ?

---------------------------------------------------------
SET @@verSION = 'Microsoft SQL Server 2005 - 9.00.3042.00 (Intel X86) Feb 9 2007 22:47:07 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition on Windows NT 6.0 (Build 6002: Service Pack 2) '
...
Рейтинг: 0 / 0
treeview binding интерфейса
    #37922168
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробовал по образцу этой статьи, но не получилось.
...
Рейтинг: 0 / 0
treeview binding интерфейса
    #37922171
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: c#
1.
2.
3.
4.
5.
            
DataContext = new
                {
                    dataltr = ((IClassObject)m_d).return_child()
                };


Код: xml
1.
2.
3.
4.
5.
6.
7.
<TreeView ItemsSource="{Binding dataltr}" Margin="0,0,0,0" >
            <TreeView.ItemTemplate>
                <HierarchicalDataTemplate>
                    <TextBlock  Text="{Binding return_name_object}" />
                </HierarchicalDataTemplate>
            </TreeView.ItemTemplate>
        </TreeView>
...
Рейтинг: 0 / 0
treeview binding интерфейса
    #37922172
Erik_Kartmann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пусто...
...
Рейтинг: 0 / 0
treeview binding интерфейса
    #37982163
Фотография @k@DElpher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не в тему:
Соглашения о написании кода на C#
Стандарт оформления кода C#
В тему:
http://www.gotdotnet.ru/blogs/sergun/5017/
механизм Binding работает к свойствам (Property). К методу можно костыльно.
Вы наверно плохо понимаете суть интерфейсов. Лучше сделать так:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
public interface IClassObject
    {
         void DeleteObject();
         //int return_base_key();
         BaseObj return_baseObj();
         bool BaseAny;
         string NameObject;
         List<IClassObject> Children;
         IClassObject Parent;
    }



а в реализации будет так:

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
public List<IClassObject> Children
{
     get
     {
          if (_children==null)
          {
               _children=new List<IClassObject>();
          }
          return _children;
     } 
     set 
     { 
           _children=value;
     }

}



Второй момент. Надо:
Код: xml
1.
<HierarchicalDataTemplate ItemsSource="{Binding Children}">


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


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