Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Обновление данных в DataGrid
|
|||
|---|---|---|---|
|
#18+
Возникла передо мной такая проблема : Есть у меня ArrayList, наполняю я его объектами своего пользовательского класса, и отображаю этот ArrayList в DataGrid. Но при добавлении нового объета в набор DataGrid не хочет отображать изменения в коллекции (не выводит новую строчку с новым объктом). Я не знаю как заставить его перечитать данные в колекции и обновить выводимую информацию. Неужели есть только этот выход DataGrid->DataSource=0; // обнилить DataSource DataGrid->DataSource=myArrayList; Но это же не хорошо. Как сделать это нормально, ну типа "Reload" что-ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.06.2004, 18:52 |
|
||
|
Обновление данных в DataGrid
|
|||
|---|---|---|---|
|
#18+
см. здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 01:42 |
|
||
|
Обновление данных в DataGrid
|
|||
|---|---|---|---|
|
#18+
>Как сделать, чтобы изменения в коллекции (добавление, >удаление объектов) сразу отображалось в Гриде, подобно тому >как это происходит с DataTable? Чтобы эта (и многие другие) возможность была доступна - коллекция должна реализовать интерфейс IBindingList. При установке data source DataGrid проверяет реализует-ли источник данных этот интерфейс и если да то подписывается на его событие ListChanged (конечно если коллекция поддерживает оповещение при изменении своего состояния, о чем говорит свойство SupportsChangeNotification этого интерфейса) Sergey Pikhulya а не подскажете ли какие методы этого IBindingList надо определять р реалезующем его классе. Я сделал для начала так, и у меня компилятор выдает ошибку: //------------------ c:\Documents and Settings\Администратор.SOFT23\Мои документы\Visual Studio Projects\ListView\Form1.cpp(10): error C2259: 'MyList::ArrayList' : cannot instantiate abstract class //------------------ namespace MyList { using namespace System::ComponentModel; public __gc class ArrayList : public System::Collections::ArrayList, public System::ComponentModel::IBindingList { public: ArrayList(void); void AddIndex(PropertyDescriptor* property){} Object* AddNew(){return 0;} void ApplySort( PropertyDescriptor* property, ListSortDirection direction){} int Find( PropertyDescriptor* property, Object* key){return 0;} void RemoveIndex(PropertyDescriptor* property){} void RemoveSort(){} __property bool get_AllowEdit(){return true;} __property bool get_AllowNew(){return true;} __property bool get_AllowRemove(){return true;} __property bool get_IsSorted(){return true;} __property ListSortDirection get_SortDirection(){return ListSortDirection::Ascending;} __property PropertyDescriptor* get_SortProperty(){return 0;} __property bool get_SupportsChangeNotification(){return true;} __property bool get_SupportsSearching(){return true;} __property bool get_SupportsSorting(){return true;} }; } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 10:45 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32546024&tid=1439063]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
21ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 308ms |

| 0 / 0 |
