以下是我的内联代码:
<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事件中的某些条件下更改的图像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我得到了异常,因为指定的参数超出了有效值的范围。请告诉我哪里出了问题。
发布于 2014-08-21 11:35:49
变化
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 Ifhttps://stackoverflow.com/questions/25424259
复制相似问题