powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / DataGrid
5 сообщений из 5, страница 1 из 1
DataGrid
    #33949284
nap2k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как сделать редактирование строки в DataGrid, если DataSource служит обычный List<T>? Если добавить button column (edit, update, cancel) происходят очень странные вещи. Чего я не понимаю?
...
Рейтинг: 0 / 0
DataGrid
    #33949468
Nikolay_Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
N>Как сделать редактирование строки в DataGrid, если DataSource служит обычный List<T>? Если добавить button column (edit, update, cancel) происходят очень странные вещи. Чего я не понимаю?
Надо подробнее описать, что происходит и привести свой код...
...
Рейтинг: 0 / 0
DataGrid
    #33949512
xopap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А что это за "страшные вещи", если не секрет?
Обычно редактирование строки делается с помощью специального столбца:
<asp:EditCommandColumn ButtonType="LinkButton"
      EditText="Edit"
      CancelText="Cancel"
      UpdateText="Update" />
Для каждого столбца с данными, которые хотите иметь возможность изменять <asp:TemplateColumn> затем указывается <ItemTemplate> и <EditItemTemplate>
В завершение задаются обработчики соответствующих событий:
yourDg_CancelCommand,yourDg_EditCommand,yourDg_UpdateCommand.
Вот в общих чертах и все, что вам необходимо сделать.
От DataSource ничего особенного не зависит - просто придется похимичит с ItemTemplate и EditItemTemplate. Удачи.
...
Рейтинг: 0 / 0
DataGrid
    #33949837
nap2k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, xopap, Вы писали:

X>А что это за "страшные вещи", если не секрет?
X>Обычно редактирование строки делается с помощью специального столбца:
X><asp:EditCommandColumn ButtonType="LinkButton"
X> EditText="Edit"
X> CancelText="Cancel"
X> UpdateText="Update" />
X>Для каждого столбца с данными, которые хотите иметь возможность изменять <asp:TemplateColumn> затем указывается <ItemTemplate> и <EditItemTemplate>
X>В завершение задаются обработчики соответствующих событий:
X>yourDg_CancelCommand,yourDg_EditCommand,yourDg_UpdateCommand.
X>Вот в общих чертах и все, что вам необходимо сделать.
X>От DataSource ничего особенного не зависит — просто придется похимичит с ItemTemplate и EditItemTemplate. Удачи.

X>
данное сообщение получено с www.gotdotnet.ru
X>ссылка на оригинальное сообщение


Это проявляется только если DataSource не DataSet/DataTable. При нажатии на Edit 1й раз не происходит ничего воообще, в следующий раз строка начинает редактироваться, только не та, возле которой нажата кнопка edit, а другая, и поля textbox стают пустыми. Проверял на 2003 и 2005.


namespace testgrid
{
/// <summary>
/// Summary description for WebForm1.
/// </summary>
public class WebForm1 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;

public class C1
{
public string A { get { return "a"; } }
public string B { get { return "b"; } }
}

private void Page_Load(object sender, System.EventArgs e)
{
if(!IsPostBack)
{
ArrayList data = new ArrayList();
for(int i = 0; i < 10; i++) data.Add(new C1());
DataGrid1.DataSource = data;
DataGrid1.DataBind();
}
}

#region Web Form Designer generated code
#endregion

private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DataGrid1.EditItemIndex = e.Item.ItemIndex;
}

}
}
...
Рейтинг: 0 / 0
DataGrid
    #33950084
xopap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вам нужно вызывать DataBind в конце метода _EditCommand( а также _CancelCommand и _UpdateCommand), так как используються разные Templates. Это должно помочь. Попробуйте копать в этом направлении.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / DataGrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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