powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
6 сообщений из 6, страница 1 из 1
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33850588
v_tarasoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема: в режиме редактирования не подымаются события OnUpdateCommand, OnCancelCommand.

Опиание:
1. Есть custom control унаследованный от DataGrid с AutoGenerateColumns = false, т.е. сборка grid-а происходит в коде самого control-а.
2. При использовании control-а с DataSource (к примеру DataSet с одной таблицей), содержащем хоть одну запись события OnUpdateCommand, OnCancelCommand подымаются.
3. При использовании control-а с DataSource (к примеру DataSet с одной таблицей), не содержащем ни одной записи события OnUpdateCommand, OnCancelCommand не подымаются.

Вопросы:
Q1. В чем может быть причина поведения описанного в (3)?
Q2. Где и как стоит смотреть причину при отладке?
...
Рейтинг: 0 / 0
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33850822
Nisus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вообще-то все эти события это обертки над OnItemCommand насколько я понимаю, а он без Item-а в общем-то невозможен видимо.
...
Рейтинг: 0 / 0
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33851052
v_tarasoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
OnItemCommand так же не подымается.

Nisus, поясните, пожалуйста, ваш комментарий на счёт Item-а.

Добавление записи идет самым простым путем: пустая запись добавляется в Table в DataSet-е первой записью и делается DataBind(), а в DataGrid EditItemIndex-у присваивается 0. Т.о. после сборки страницы в DataGrid есть запись без значений в режиме редактирования и EditCommandColumn отображает LinkButtons 'Ok' и 'Cancel'.

Забыл упомянуть: используется .NET Framework 1.1
...
Рейтинг: 0 / 0
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33852326
v_tarasoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую детализировать проблему. Ниже приведены последовательности событий при правильной работе control-а и при некорректной (imho).

1. Корректное поведение:

1.1. IsPostBack == false, DataSet.Table[0].Rows.Count > 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Item) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad

1.2. IsPostBack == true, DataSet.Table[0].Rows.Count > 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Item) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad -> OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (EditItem) -> OnItemDataBound -> OnItemCreated (AlternatingItem) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound

1.3. IsPostBack == true, DataSet.Table[0].Rows.Count > 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (EditItem) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad -> OnUpdateCommand -> OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Item) -> OnItemDataBound -> OnItemCreated (AlternatingItem) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound


2. Некорректное поведение

2.1. IsPostBack == false, DataSet.Table[0].Rows.Count == 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad

2.2. IsPostBack == true, DataSet.Table[0].Rows.Count == 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad -> OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (EditItem) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound

2.3. IsPostBack == true, DataSet.Table[0].Rows.Count == 0:
OnDataBinding -> OnItemCreated (Header) -> OnItemDataBound -> OnItemCreated (Footer) -> OnItemDataBound -> OnLoad

Вот с пунктом 2.3. я и борюсь...
...
Рейтинг: 0 / 0
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33853681
v_tarasoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гм... Наверное, лучше один раз увидеть, чем сто раз читать описания... Если, кто-то готов помочь разобраться пишите на e-mail, я пришлю код.

К сожалению, у меня не так много опыта разработки серверных contol-ов, чтобы разобраться с этой проблемой самому, а закончить control надо.
...
Рейтинг: 0 / 0
Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
    #33864352
v_tarasoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблема решена. Запаниковал. Наверное, пора в отпуск. ^_^~~~~~~~~~~~~~~~~~
Please, rate my answers
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Custom DataGrid: не подымаются события OnUpdateCommand, OnCancelCommand
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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