2015-03-09 2 views
0

Я использую Visual Studio 2010 с Visual Basic. На моей первой веб-странице у меня есть gridview с кнопкой в ​​каждой строке, которая открывает новую веб-страницу, и заполняет поля значениями из первой строки сетки сетки, где нажата кнопка. Прекрасно работает, за исключением поля, которое является флажком. Он продолжает передавать ложь (или не проверяется), даже если флажок установлен в строке gridview первой страницы.Передача значения check gridview на другую веб-страницу

На исходной веб-странице я перенаправляю флажок (я вырезаю остальные значения, которые должны были быть там ...) - Response.Redirect ("TimeOffNoRequestEdit.aspx? ... +" & AllDay_YesNo =»+ row.Cells (3) .Text.ToString() ...)

В новой веб-странице, код осины для чекбокса:

<asp:CheckBox ID="CheckBox1" runat="server" /> 

на Page_Load этой новой веб-страница , Я вызываю это значение со следующим кодом:

CheckBox1.Text = Request.QueryString("AllDay_YesNo") 

Когда я его отлаживаю, я всегда показываю флажок как ложный, поэтому не проверяется.

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

+0

размещать в GridView разметку и rowdataound со страницы 1 – fnostro

ответ

0

Похоже, что вы неправильно обращаетесь к значению. Текущий код, row.Cells (3) .Text.ToString(), будет извлекать текст ячейки, но здесь контент, который мы ищем, - это элемент управления, а именно ваш флажок.

Принимаю как должное, вы предоставили индекс правой ячейки, и эта ячейка содержит только ваш флажок. Идея здесь в том, что вам нужно установить фактический флажок, чтобы добраться до объекта Checked.

Ctype(row.Cells[3].Controls[0], CheckBox).Checked.ToString() 

Кроме того, при использовании значения на второй странице, изменить код, чтобы что-то по этой линии, потому что сейчас вы просто изменение текста в CheckBox в:

CheckBox1.Checked = Boolean.Parse(Request.QueryString("AllDay_YesNo")) 
+0

Да! Это сработало, но у меня все еще что-то перепуталось. Я получаю флажок с True (или False) рядом с ним. Мне нужно изменить код в Page_Load - CheckBox1.Text = Request.QueryString («AllDay_YesNo»)? Я не знаю, где даже выяснить, к чему это изменить. (Длинный день - мертвый мозг) – user3033348

+0

Я не понял, что эта часть кода содержит небольшую ошибку. Вам нужно проанализировать строку, которая представляет значение, проверьте мое обновление. –

+0

Да! Большое спасибо RaNuD! Я собираюсь опубликовать еще один вопрос об этих страницах - это минута, и я уверен, что вы сразу узнаете ответ! Я просто изучаю asp, и я не мог найти ничего о передаче значений из gridview, кроме текста. Ты жжешь! – user3033348

Смежные вопросы