Должен ли я использовать репитер? - PullRequest
1 голос
/ 16 сентября 2010

У меня есть таблица, похожая на:

ID...NAME.....HTMLTEXT
1....Footer....`<b>test</b>`

, где каждая запись имеет некоторый HTML-текст и соответствующее имя и идентификатор.

То, что я хочу сделать в ASP.net C #, этоперечислить каждую из этих записей на странице таким образом, чтобы текст HTML отображался точно так, как он должен быть (например, <b>test</b> должен отображать «тест» жирным шрифтом), и каждая запись должна быть редактируемой.При нажатии кнопки «Изменить» на записи текст HTML должен быть заменен текстовым полем с текстом внутри него, чтобы вы могли отредактировать его и сохранить.

Например:

FOOTER --EditButton -

TEXT test

Теперь я не уверен в том, чтолучший способ сделать это.Должен ли я использовать ретранслятор с ItemTemplate для каждой записи?Если я использую повторитель и нажимаю кнопку редактирования, как узнать, какая кнопка редактирования нажата и как узнать, в каком текстовом поле отображается текст и т. Д.?

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

Вы также можете использовать ListView - я склонен использовать это, потому что он довольно надежный.Элементы управления привязкой данных поддерживают оператор <% # Bind ("Field")%>.Вы настраиваете свои шаблоны в ItemTemplate или EditItemTemplate, и если вы добавляете правильные команды к кнопкам в пользовательском интерфейсе, все они связывают нужные вам события (в зависимости от того, как вы связываете данные).Если вы не используете элемент управления источником данных, вам нужно вручную подключиться к событиям ItemEditing, ItemUpdating и т. Д.

Кроме того, при необходимости вы можете получить ссылки на элементы управления с помощью FindControl текущего элемента.("ID") метод.

HTH.

0 голосов
/ 16 сентября 2010

Создайте пользовательский элемент управления (.ascx) и на этом элементе сделайте линию с желаемым видом и обработайте изменение / сохранение / удаление и т. Д.

Затем поместите этот элемент управления в повторитель и простодайте ему идентификатор для загрузки и редактирования.

...