我正在尝试使用网格视图中的图像按钮来选择一行,这样我就可以使用SelectedIndexChanged函数来做其他事情。我已经尝试过了:
<asp:ImageButton ID="Image1" CommandName="SelectRowGrid2" runat="server" ImageUrl="~/images/select.png" />
Protected Sub GridView2_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView2.RowCommand
Select Case e.CommandName
Case "SelectRowGrid2"
'some code for selecting the index?
Label1.Text = GridView2.SelectedIndex
End Select
End Sub但是当我去调试它的时候,它甚至没有进入RowCommand子程序。在进阶时谢谢。
发布于 2011-02-25 04:48:38
可以将GridView的AutoGenerateSelectButton设置为true,也可以将LinkButton的CommandName设置为“”
或者您可以尝试执行以下操作:
Protected Sub ImgSelect_Click(ByVal sender As Object, ByVal e As System.Web.UI.ImageClickEventArgs)
Dim row As GridViewRow = DirectCast(DirectCast(sender, ImageButton).NamingContainer, GridViewRow)
DirectCast(row.NamingContainer, GridView).SelectedIndex = row.RowIndex
End Subaspx:
<asp:TemplateField HeaderText="Select">
<ItemTemplate >
<asp:ImageButton ID="ImgSelect" OnClick="ImgSelect_Click" runat="server" />
</ItemTemplate>
</asp:TemplateField>发布于 2011-02-25 04:49:48
我在c#中已经做过很多次了。也许我能帮你。
有些事情我做的和你不一样:
我称之为CellContentClick而不是RowCommand。2.我想查看一下,单击了行中的哪个单元格3.检查该行是否不为空4.如果是我的图像按钮单元格,则获取我的行数据
1.
private void dgv_CellContentClick(object sender, DataGridViewCellEventArgs e)2.
if (e.ColumnIndex == dgv.Columns["btnClmn"].Index)3.
if (dgvAllApplication.CurrentRow != null)4.
txtName.Text = dgv.CurrentRow.Cells["App_Name"].Value.ToString();祝好运!
发布于 2011-02-25 04:58:31
您可以在imagebutton上创建单击事件,然后在该行上执行所需的任何操作
protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
ImageButton img = (ImageButton)sender;
GridViewRow row = (GridViewRow)img.Parent.Parent;
//do stuff
//find label in the same row
Label lbl = (Label)row.FindControl("Label1");
}https://stackoverflow.com/questions/5110142
复制相似问题