Получение значения из сетки данных в сеанс

#c# #asp.net #sql-server

#c# #asp.net #sql-сервер

Вопрос:

Может кто-нибудь 1 помочь мне с тем, как использовать столбец button в datagird? мое требование заключается в том, что когда вы нажимаете соответствующую кнопку в столбце .. данные, принадлежащие этой соответствующей кнопке, столбец должен быть заполнен текстовыми полями ниже

как можно скорее

спасибо 🙂

это класс, который я использовал для загрузки данных в datagird

 public void getGrid_viewproblem (GridView a)
{
    con = new SqlConnection();
    cstring();
    data = new SqlDataAdapter("select * from Complaint", con);
    build = new SqlCommandBuilder(data);

    ds = new DataSet();
    data.Fill(ds, "A");

    a.DataSource = ds.Tables["A"];
    a.DataBind();
}
  

Комментарии:

1. сакита, тебе следует делать больше домашней работы!

2. пожалуйста, уточните подробнее… похоже, вы разместили вопрос в спешке .. :)… Например, что вы хотите сделать с сеткой. Вы имеете в виду добавить динамический столбец button, или получить значение строки после добавления динамического столбца button, или получить всю сетку во время обратной публикации… объясните подробно

3. я добавил элемент управления button в gird.my требование заключается в том, что когда я нажимаю на кнопку в соответствующей колонке datagird, данные должны быть заполнены текстовыми полями на следующей веб-странице .. для этого мне нужно получить первичный ключ этого столбца. итак, в основном, чего я хочу, так это когда я нажимаю на кнопку, основной ключ этого столбца должен быть назначен сеансу

4. как вы добавляете столбцы в gridview. Автогенерация = true из false

Ответ №1:

Если вы используете AutoGenerateColumns=»False» в виде таблицы, тогда добавьте столбцы

 <asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:Button ID="btnEdit" runat="server" Text="Edit" CommandArgument='<%# Bind("ID") %>' CausesValidation="false" CommandName="EditData" Width="55px" />
</ItemTemplate>
</asp:TemplateField>
  

А затем добавить событие OnRowCommand.

В событии OnRowCommand проверьте условие

 e.CommandName == "EditData"
  

если условие удовлетворяет, то получите данные (ПЕРВИЧНЫЙ КЛЮЧ) с помощью e.CommandArgument и делайте, как хотите