【发布时间】:2011-12-01 21:31:39
【问题描述】:
我需要在页面加载时根据特定条件在我的每一行中禁用<asp:HyperLink>。
到目前为止,我没有任何运气......
For i As Integer = 0 To CourseData.Tables(0).Rows.Count - 1
If CourseData.Tables(0).Rows(i)("completedyn") = "yes" Then
CourseData.Tables(0).Rows(i)("completedyn") = "Complete"
Else
CourseData.Tables(0).Rows(i)("completedyn") = "Incomplete"
End If
Next
grdCourses.DataSource = CourseData
grdCourses.DataBind()
For i As Integer = 0 To grdCourses.Items.Count - 1
If grdCourses.FindControl("hypEnter") IsNot Nothing Then
Dim hypEnter As HyperLink = CType(grdCourses.FindControl("hypEnter"), HyperLink)
If CourseData.Tables(0).Rows(i)("completedyn") = "Incomplete" Then
hypEnter.Enabled = False
End If
End If
Next
<asp:DataGrid runat="server" ID="grdCourses">
<Columns>
<asp:BoundColumn DataField="modulename" HeaderText="Module Name"></asp:BoundColumn>
<asp:BoundColumn DataField="completedyn" HeaderText="Status"></asp:BoundColumn>
<asp:BoundColumn DataField="completeddate" HeaderText="Date Completed"></asp:BoundColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:HyperLink runat="server" ID="hypEnter" Text="View Module" NavigateUrl='<%# "View.aspx?mod=" + Eval("moduleid").ToString()%>'></asp:HyperLink>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
FindControl() 方法永远不会改变。
任何帮助将不胜感激
【问题讨论】: