gpt4 book ai didi

c# - 如何知道 GridView 的 ItemTemplate 中服务器控件的 id?

转载 作者:行者123 更新时间:2023-11-30 21:13:57 25 4
gpt4 key购买 nike

问题:如何将 FixHyperLink 的可见性绑定(bind)到 Label1 具有非空文本值的条件?

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1"
<Columns>
<asp:TemplateField HeaderText="Error" SortExpression="Error">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Error") %>'></asp:Label>
<asp:HyperLink ID="FixHyperLink" runat="server" NavigateUrl='<%# Bind("AppID", "~/da/Default2.aspx?appid={0}") %>'>Fix</asp:HyperLink>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>

更新:C# 版本的答案

        foreach (GridViewRow row in GridView1.Rows)
{
var l = (Label)row.FindControl("Label1");
var h = (HyperLink)row.FindControl("FixHyperLink");
h.Visible = !string.IsNullOrWhiteSpace(l.Text);
}

最佳答案

您必须确定要更改的行的索引,然后像这样获取它:

        Dim tempRow As System.Web.UI.WebControls.GridViewRow
Dim tempLabel As Label
Dim tempHyperlink As HyperLink

For Each tempRow In GridView1.Rows
tempLabel = CType(tempRow.FindControl("Label1"), Label)
tempHyperlink = CType(tempRow.FindControl("FixHyperLink"), HyperLink)
If tempLabel.Text.Trim <> String.Empty Then
tempHyperlink.Visible = True
Else
tempHyperlink.Visible = False
End If
Next

关于c# - 如何知道 GridView 的 ItemTemplate 中服务器控件的 id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6514198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com