簡體   English   中英

在Gridview的Row DataBound事件中找到ButtonField

[英]Find ButtonField in Gridview's Row DataBound Event

這是我的內聯代碼:

<asp:GridView ID="GrdVacation" runat="server" DataKeyNames="ID" AutoGenerateColumns="False">
  <Columns>

   <asp:TemplateField HeaderText="S.No">
               <HeaderTemplate>
               Sno</HeaderTemplate>
               <ItemTemplate>
               <%#Container.DataItemIndex + 1%>
               </ItemTemplateField>
   </asp:TemplateField>
   <asp:BoundField HeaderText="Badge No" DataField="EmpBadge" />
   <asp:BoundField HeaderText="Last Vacation Date" DataField="LastVacDate" DataFormatString="{0:dd-MMM-yyyy}" />
   <asp:BoundField HeaderText="Vacation Expiry Date" DataField="VacValidity" DataFormatString="{0:dd-MMM-yyyy}" />
   <asp:BoundField HeaderText="Vacation Start Date" DataField="VacStartDate" DataFormatString="{0:dd-MMM-yyyy}" />
   <asp:BoundField HeaderText="Vacation End Date" DataField="VacEndDate" DataFormatString="{0:dd-MMM-yyyy}" />
   <asp:BoundField HeaderText="13 Salary Request" DataField="E13SalRequest" />
   <asp:ButtonField ButtonType="Image" CommandName="select" HeaderText="Edit" ImageUrl="~/images/Edit.png"></asp:ButtonField>

</Columns>
</asp:GridView>

我將在GridView RowDataBound事件中的某些情況下更改ButtonFiled的圖像URL。

到目前為止,我已經嘗試過的《守則》

   Protected Sub GrdVacation_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GrdVacation.RowDataBound

    If (e.Row.RowType = DataControlRowType.DataRow) Then
    Dim NM = CType(e.Row.Cells(0).Controls(7), ImageButton)

     if(true) Then
        NM.ImageURL="somepath"
     End If

由於指定的參數超出了有效值范圍,因此出現異常 請建議我出了什么問題。

更改

Dim NM = CType(e.Row.Cells(0).Controls(7), ImageButton)

Dim NM = CType(e.Row.Cells(7).Controls(0), ImageButton)

像這樣:

Protected Sub GrdVacation_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GrdVacation.RowDataBound

    If (e.Row.RowType = DataControlRowType.DataRow) Then
    //// Dim NM = CType(e.Row.Cells(0).Controls(7), ImageButton)
    Dim NM = CType(e.Row.Cells(7).Controls(0), ImageButton)


     if(true) Then
        NM.ImageURL="somepath"
     End If

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM