Как добавить функциональность в мои строки DataGrid

#c# #sql #asp.net #datagrid

#c# #sql #asp.net #datagrid

Вопрос:

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

Я не совсем уверен, как заставить новый метод запускать разные SQL-запросы, я предполагаю, что мне придется использовать идентификатор данных, которые я извлек из базы данных? Но я также не знаю, как получить этот идентификатор из строки, поэтому было бы очень полезно, если бы вы могли помочь с этим.

Вот код, который я написал, чтобы получить данные, а затем создать сетку данных:

     protected void SubMenuLoadData(object sender, ImageClickEventArgs e)
    {
        DataGridView1.DataSource = GetData("SELECT [ID], [Description] FROM Table1 WHERE[Part Number] like 'A%'");
        DataGridView1.DataBind();
    }

    private DataTable GetData(string query)
    {
        string constr = ConfigurationManager.ConnectionStrings["ArrowEngineering"].ConnectionString;
        using (SqlConnection con = new SqlConnection(constr))
        {
            using (SqlCommand cmd = new SqlCommand(query))
            {
                using (SqlDataAdapter sda = new SqlDataAdapter())
                {
                    cmd.Connection = con;
                    sda.SelectCommand = cmd;
                    using (DataTable dt = new DataTable())
                    {
                        sda.Fill(dt);
                        return dt;
                    }
                }
            }
        }
    }
  

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

1. Не вызывайте DataGridView a GridView или a DataGrid и наоборот!! Это неправильно и сбивает с толку, поскольку это разные элементы управления. Всегда называйте вещи своими именами! Да, для ввода требуется на четыре буквы больше

2. Если строка содержит необходимые данные, получите их в событии CellClick, используя e.RowIndex..

3. @TaW хорошо, приятель, я только начал их использовать, поэтому понятия не имею, в чем разница, и я использую ImageClickEventArgs, поэтому я не могу этого сделать

4. ImageClickEventArgs звучит как ASP или WPF. — На что вы ориентируетесь: Winforms, WPF, ASP ..? Всегда отмечайте свой вопрос правильно! — Но вы написали, что хотите углубиться, когда пользователь нажимает на строку, верно?

5. Я использую ASP.NET Веб-формы, и в основном, когда я нажимаю на кнопку, появляется сетка данных. Затем я хочу иметь возможность щелкнуть строку в datagridview, которая загружает еще больше данных. Я должен использовать ImageClickEventArgs, не так ли, потому что я использую asp: ImageButton