单击标签上的Fire Gridview RowCommand

时间:2014-08-08 13:50:41

标签: c# asp.net gridview webforms

当我点击GridView的标签时,我很难执行RowCommand。

这是我的gridview代码。

<asp:GridView ID="JobsGridView" runat="server" OnRowCommand="JobsGridView_RowCommand" EmptyDataText="No builds found" HeaderStyle-CssClass="HeaderColors" AutoGenerateColumns="False" ShowHeader="false">
  <Columns>
     <asp:ButtonField Text='SingleClick' CommandName="SingleClick" Visible="False"/>
     <asp:TemplateField>
         <ItemTemplate>
             <asp:Label ID="JobIdLabel" runat="server" Text='<%# Bind("BrokenProject") %>' ></asp:Label>
         </ItemTemplate>
     </asp:TemplateField>
   </Columns>
 <RowStyle Width="100%" CssClass=""></RowStyle>
</asp:GridView>

点击标签后如何才能调用JobsGridView_RowCommand函数?如果我看到按钮区域,我可以看到按钮说它旁边的SingleClick,它确实调用了该功能,但我不想要这个额外的按钮。我只想点击列表上的名称并发生一些事情。

我知道点击标签做任何事情似乎很愚蠢,但似乎没有标签的事件,我一直在看一些类似的代码,他们做了类似的事......

2 个答案:

答案 0 :(得分:2)

您可以使用LinkBut​​ton。

<asp:LinkButton ID="JobIdLink" runat="server"
    CommandName="SomeCommand"
    Text='<%# Bind("BrokenProject") %>' >
</asp:LinkButton>

您甚至可以将其设计为看起来不像链接,更像是标签。

a:link
{ 
    color: black; 
    text-decoration: none;
}

a:visited
{ 
    color: black; 
    text-decoration: none;
}

a:hover
{
    color: black; 
    text-decoration: none;
} 

答案 1 :(得分:0)

除非您想编写Javascript来处理点击,否则您需要一个能够回发到服务器的控件,就像Andrei提到的那样。输入(例如按钮)和超链接可以做到这一点。