【发布时间】:2015-03-04 21:35:25
【问题描述】:
我在 ASP.Net Web 控件中使用 gridview,我已经分配了列,并且总是有 6 行 HC1、HC2、AC1、AC2、AC3 和 AC4。我想用六行初始化 Gridview,并让左列是这些行名称,即使在单击该行时 DataRow 设置为“编辑”,它们也将保持为只读状态。以这种方式命名行可能吗?如果没有,是否有更好的工具可用于此目的,还是我必须发挥创意?
如果有帮助的话,这里是创建gridview的html代码:
<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 是否能满足我的需要
【问题讨论】:
-
详细信息视图默认执行此操作。这是一个 2 列的“网格”,其中第 1 列是列名的“列表”,第 2 列是相关数据。
-
感谢您如此迅速和乐于助人的回答,但我根据您的回答尝试了此操作。详细信息视图仅允许两列,因此您不能单独让 HC1 将名字添加到一列,最后添加到另一列,然后将地址添加到另一列,等等。网上有关于一起使用 gridview 和 detailsview 的东西,这似乎是完美的解决方案但每次我尝试它只是在gridview下放一个detailsview所以我想我对如何一起使用它们有点困惑
-
您可以添加一个未绑定的模板字段,为其添加标签,并在 Gridview 数据绑定事件循环中通过
blah.Columns并从每列中获取 HeaderText 以填充未绑定模板字段中的标签。