powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вопрос на засыпку (Отображение связей в своих классах данных) :)
3 сообщений из 3, страница 1 из 1
Вопрос на засыпку (Отображение связей в своих классах данных) :)
    #32376991
Dronopotamus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую.
Чтобы класс распознавался при использовании в качастве DataSource как коллекция, он должен реализовать интерфейс IBindingList например так:
ms-help://MS.VSCC/MS.MSDNVS/cpref/html/frlrfsystemcomponentmodelibindinglistclasstopic.htm](полный код в тут)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
public class CustomersList :  CollectionBase, IBindingList
{
     public Customer this[int index] 
      {
         get 
         {
            return (Customer)(List[index]);
         }
         set 
         {
            List[index] = value;
         }
      }
      ...
}


Чтобы класс Customer можно было отображать\добавлять\удалять например из грида он должен реализовать интерфейс IEditableObject

ms-help://MS.VSCC/MS.MSDNVS/cpref/html/frlrfsystemcomponentmodelieditableobjectclasstopic.htm]полный код

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
public class Customer : IEditableObject 
{
       
      struct CustomerData 
      {
         internal string id ;
         internal string firstName ;
         internal string lastName ;
      }
      ...
}


Теперь в классе Customer сделать свойство типа
public OrderList Orders
{
get {}
set {}
}
Внимание вопрос :) : что надо реализовать дополнительно классу Customer для того, чтобы в гриде для каждой записи можно было пройти по связи к заказам клиента, а также чтобы можно было делать вот так :
Код: plaintext
1.
2.
grid1.DataSource = cursomerlist;
grid2.DataSource = customerlist;
grid1.DataMember =  "Orders" ;
, т.е. при переходе в первом гриде на к другому клиенту, второй отображает его заказы.
...
Рейтинг: 0 / 0
Вопрос на засыпку (Отображение связей в своих классах данных) :)
    #32377006
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему не так?
Код: plaintext
1.
2.
3.
grid1.DataSource = cursomerlist;
grid2.DataSource = orderlist;
grid1.DataMember =  "Orders" ;
...
Рейтинг: 0 / 0
Вопрос на засыпку (Отображение связей в своих классах данных) :)
    #32377033
Dronopotamus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ну тогда при навигации по первому гриду второй меняться не будет, а мне надо, чтобы он отображал заказы текущего клиента в первом гриде, но это всё вторично. Мне бы сделать хотябы просто отображение связей в одном гриде - я уже был бы доволен :)
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Вопрос на засыпку (Отображение связей в своих классах данных) :)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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