Выбор элемента в GridView с помощью кнопки ITemplate Generated - PullRequest
1 голос
/ 07 июня 2011

У меня возникают проблемы с выяснением того, как я могу использовать кнопку изображения (см. Ниже) в своем ITemplate, чтобы добавить соответствующие данные строки кнопки (ItemID) в виде строки запроса.

Мой ImageButton в моем ITemplate:

ImageButton select_button = new ImageButton();
select_button.ID = "select_button";
select_button.ImageUrl = "~/Files/System/Icons/highlighter.png";
select_button.CommandName = "Select";
select_button.ToolTip = "Select";
container.Controls.Add(select_button);

Должен ли я обрабатывать это в событии OnClick кнопки изображения (если так, есть ли способ получить строку, в которой находится кнопка) или я могу обрабатывать в событиях GridView (rowbinding, rowseleted, rowcommand и т. д.)?

Я был бы рад более подробно рассказать о моем коде по запросу.^ ^

1 Ответ

1 голос
/ 07 июня 2011

Вы можете установить идентификатор в свойстве CommandArgument элемента управления кнопки в событии RowDataBound. Когда у вас есть идентификатор, вы можете отслеживать строки с ним.

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        DataRow dr = ((DataRowView)e.Row.DataItem).Row;
        ((Button)e.Row.FindControl("select_button")).CommandArgument = dr["IdColumn"].ToString();
    }
}
...