Как привязать к элементу управления в ASP.NET ListView - PullRequest
0 голосов
/ 05 декабря 2010

У меня есть список, который мне нужно привязать к списку, который я получаю от API.Список выглядит так:

struct DataItem { int level; string name; Guid key };
List<DataItem> myList = API.GetList();
ListView1.DataSource = myList;
ListView1.DataBind();

Все это прекрасно работает для отображения.Однако таблица должна редактировать значение уровня.Я не уверен, как это сделать.Я пробовал обработчики событий в listView, но они никогда не вызываются.Я пробовал текстовое поле для поля уровня (с Bind и Eval) и обработчик события OnTextChanged, но обработчик события никогда не вызывается.(Я пробовал с различными комбинациями AutoPostBack и ViewState.)

Как я могу программно редактировать эту структуру данных?

1 Ответ

0 голосов
/ 06 декабря 2010

Двухстороннее связывание данных, которое вы пытаетесь реализовать здесь, не будет работать так - List не реализует INotifyPropertyChanged (кто-то исправит меня, если я ошибаюсь).

Вы можете рассмотреть возможность использования простого старогоDataTable, который может быть двухсторонним из коробки.Если производительность не является критически важной проблемой, преобразование вашего List в DataTable (и обратно, в зависимости от того, что вы хотите сделать с измененными данными) достаточно просто, вместо того, чтобы бороться с пользовательскими реализациями типов списков.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...