Сохранение данных gridview внутри multiview

У меня есть представления внутри контейнера с несколькими представлениями. View1 имеет вид сетки, к которому я привязываю данные, извлеченные из базы данных. Кроме того, я добавил LinkButton в сетку. Вид 1 будет активен при загрузке страницы.

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

Я попытался восстановить данные выбранной строки, указав CommandName как «Выбрать» для кнопки ссылки. Я могу получить индекс выбранной строки. Но когда я получаю доступ к данным с помощью приведенного ниже кода, я получаю исключение нулевой ссылки.

Dim r as Integer
Dim dr As DataRow
r=grid1.SelectedRow.RowIndex 'Here, I get RowIndex properly.
For i As Integer = 1 to 5
dr(i)=grid1.Rows(i).Cells(i).Text 'I get Null reference error because Text has nothing.
Next

Извините, что не предоставил всю часть кода. Дайте мне знать, если потребуется дополнительная информация. Я хочу знать, могут ли данные сохраняться во всех представлениях в контейнере с несколькими представлениями, или мне следует использовать другую альтернативу. Заранее спасибо!


person Rambo    schedule 01.04.2016    source источник


Ответы (2)


На первый взгляд не должно быть так:

Dim r as Integer
Dim dr As DataRow
r=grid1.SelectedRow.RowIndex 'Here, I get RowIndex properly.
For i As Integer = 1 to 5
dr(i)=grid1.Rows(r).Cells(i).Text 'I get Null reference error because Text has     nothing.
Next

Обратите внимание на grid1.Rows(r) вместо grid1.Rows(i)

person Luc Morin    schedule 01.04.2016
comment
Вот я по ошибке написал. В моем коде все в порядке. - person Rambo; 02.04.2016

Я установил значение в качестве CommandArgument кнопки Link и получил данные из БД в соответствии со значением. Проблема отсортирована. Но, еще один хит БД!

person Rambo    schedule 04.04.2016