我在 GridView 中创建了项目模板。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
BackColor="White" BorderColor="#E7E7FF" BorderStyle="None" BorderWidth="1px"
CellPadding="3" GridLines="Horizontal" onrowdatabound="GridView1_RowDataBound" >
<AlternatingRowStyle BackColor="#F7F7F7" />
<Columns>
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Enabled='<%# Eval("id") %>'
Text="Label"></asp:Label>
</ItemTemplate>
</asp:TemplateField>
现在我的问题是我将“id”存储在哈希集中,因为我有一些重复的 ID,我只想显示唯一的 ID
var id = new HashSet<String>();
id.Add("1");
id.Add("1");
id.Add("2");
id.Add("3");
id.Add("4");
id.Add("5");
Gridview1.DataSource=id;
Gridview1.DataBind();
我认为 Eval 方法有问题,我认为它没有从 Hashset 中获取价值。
有人可以解释一下如何将 Hashste 中的数据绑定到 Eval 吗?
此外,如果我使用 ItemTemplate,它就可以工作,我的意思是我可以直接从 Hashset 值填充 gridiew。但是,我正在尝试制作嵌套网格视图,因此使用项目模板。
如果您有任何问题,请告诉我。