ASP.NET 网格视图行名称
ASP.NET Gridview row names
我在 ASP.Net Web 控件中使用 gridview,我已经分配了列并且总是有 6 行 HC1、HC2、AC1、AC2、AC3 和 AC4。我想用六行初始化 Gridview,并让左列成为这些行名称,即使在单击该行时将 DataRow 设置为编辑,这些行名称也将保持只读状态。以这种方式命名行可能吗?如果没有,是否有更好的工具可用于此目的,还是我必须发挥创意?
另外,如果这里有帮助的话,html 创建 gridview 的代码:
<asp:GridView ID="blah" AutoGenerateColumns="False" runat="server" Width="540px">
<Columns>
<asp:TemplateField></asp:TemplateField>
<asp:TemplateField HeaderText="Name"></asp:TemplateField>
<asp:TemplateField HeaderText="Email"></asp:TemplateField>
<asp:TemplateField HeaderText="Phone"></asp:TemplateField>
<asp:TemplateField HeaderText="Address"></asp:TemplateField>
<asp:TemplateField HeaderText="City"></asp:TemplateField>
<asp:TemplateField HeaderText="State"></asp:TemplateField>
<asp:TemplateField HeaderText="Zip"></asp:TemplateField>
</Columns>
</asp:GridView>
我还没有写他的代码,因为我不确定这个 gridview 是否会做我需要的
将未绑定的模板字段添加到 gridview 并填充标签:
<asp:GridView ID="blah" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblColumnName" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
... (rest of fields)
</Columns>
</asp:GridView>
然后在 Gridview Databound 事件循环中遍历列 headers 并为每一行填充列名
Private Sub blah_DataBound(sender As Object, e As EventArgs) Handles blah.DataBound
For i As Integer = 1 To GridView1.Columns.Count - 1
lbl = CType(GridView1.Rows(i - 1).FindControl("lblColumnName"), Label)
lbl.Text = GridView1.Columns(i).HeaderText
Next
End Sub
我在 ASP.Net Web 控件中使用 gridview,我已经分配了列并且总是有 6 行 HC1、HC2、AC1、AC2、AC3 和 AC4。我想用六行初始化 Gridview,并让左列成为这些行名称,即使在单击该行时将 DataRow 设置为编辑,这些行名称也将保持只读状态。以这种方式命名行可能吗?如果没有,是否有更好的工具可用于此目的,还是我必须发挥创意?
另外,如果这里有帮助的话,html 创建 gridview 的代码:
<asp:GridView ID="blah" AutoGenerateColumns="False" runat="server" Width="540px">
<Columns>
<asp:TemplateField></asp:TemplateField>
<asp:TemplateField HeaderText="Name"></asp:TemplateField>
<asp:TemplateField HeaderText="Email"></asp:TemplateField>
<asp:TemplateField HeaderText="Phone"></asp:TemplateField>
<asp:TemplateField HeaderText="Address"></asp:TemplateField>
<asp:TemplateField HeaderText="City"></asp:TemplateField>
<asp:TemplateField HeaderText="State"></asp:TemplateField>
<asp:TemplateField HeaderText="Zip"></asp:TemplateField>
</Columns>
</asp:GridView>
我还没有写他的代码,因为我不确定这个 gridview 是否会做我需要的
将未绑定的模板字段添加到 gridview 并填充标签:
<asp:GridView ID="blah" runat="server" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID="lblColumnName" runat="server" Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
... (rest of fields)
</Columns>
</asp:GridView>
然后在 Gridview Databound 事件循环中遍历列 headers 并为每一行填充列名
Private Sub blah_DataBound(sender As Object, e As EventArgs) Handles blah.DataBound
For i As Integer = 1 To GridView1.Columns.Count - 1
lbl = CType(GridView1.Rows(i - 1).FindControl("lblColumnName"), Label)
lbl.Text = GridView1.Columns(i).HeaderText
Next
End Sub