ASP.NET:Редактируемый элемент управления с привязкой к данным в каждой записи?
Вопрос
Нам нужно отобразить результат выполнения инструкции SQL SELECT на веб-странице ASP.NET 3.5.Хотя существует несколько столбцов, которые необходимо отобразить, только в одном из столбцов требуется редактируемое текстовое поле...однако каждая запись в результирующем наборе нуждается в этом редактируемом текстовом поле.
Я знаю, что могу сделать это вручную, самостоятельно создав html-таблицу, но я надеялся, что есть способ использовать элемент управления с привязкой к данным (GridView?или ListView?) чтобы сделать это.
Будучи несколько новичком в ASP.NET, я надеюсь, что есть кто-то, кто сделал это.
-- Спасибо за вашу помощь!
Небольшое дополнительное уточнение....
Нам нужно, чтобы все записи были доступны для редактирования сразу после отображения - поэтому все записи должны либо отображаться в режиме редактирования одновременно, либо в обычном режиме отображения должно быть редактируемое текстовое поле.
Решение
Используйте GridView и преобразуйте столбец, который вы хотите сделать доступным для редактирования, в шаблон.В ItemTemplate этого поля удалите Метку и добавьте текстовое поле.
Добавьте дополнительную кнопку "Сохранить" вне GridView и выполните итерацию GridRows, найдите текстовое поле (в каждой строке) и используйте его для обновления базы данных.
Другие советы
Добавьте столбец шаблона, а затем добавьте элемент управления текстовым полем вместо элемента управления меткой
Граничные поля GridView имеют ReadOnly
свойство, которое может быть использовано для предотвращения редактирования поля в режиме редактирования.Установите для него значение True для всех столбцов, которые не должны быть доступны для редактирования.
<asp:boundfield datafield="myNonEditableColumn" Readonly="true" Headertext="My Non-Editable Column"/>