2016-05-17 4 views
1

Я пытаюсь присвоить значение переменной GridView переменной сеанса. У меня есть база данных SQL с таблицей Computer_Cases и столбец FormFactor. Мои GridView называется GridView1 и SqlDataSource является:Назначение выбранного значения GridView из базы данных SQL в переменную

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:HardwareConnectionString %>" 
    SelectCommand="SELECT * FROM [Computer_Cases]"></asp:SqlDataSource> 

Так, очевидно, GridView просто показывая все из таблицы случаев. У меня есть выбор включен в элементе управления GridView, но я не уверен, как фактически сохранить значение переменной (например, Session["Form_Factor_Selection_Variable"]), когда кто-то выбирает строку. Я пытаюсь сохранить значение столбца FormFactor для выбранной строки в элементе управления GridView. Затем значение будет использовано на другой странице для отображения всех материнских плат (разных таблиц), форм-фактор которых соответствует тому, что было первоначально выбрано.

ответ

1

Вы должны использовать событие GridViewSelectedIndexChanged. Вот пример.

void YourGridView_SelectedIndexChanged(Object sender, GridViewSelectEventArgs e) 
    { 
    GridViewRow row = YourGridView.SelectedRow; 

    Session["Form_Factor_Selection_Variable"] = row.Cells[1].Text; // use the proper index for the cell that you want to save in session variable 
    } 

И убедитесь, что добавить следующее свойство в коде разметки для GridView

onselectedindexchanged="YourGridView_SelectedIndexChanged" 

Пожалуйста, оцените и принять ответ, если это помогло решить проблему.

+0

Работал отлично. – Aeternus

+0

Отлично! Проголосуйте за ответ, если это возможно. ура! – Sam

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