【发布时间】:2019-01-22 03:47:10
【问题描述】:
我在我的项目中使用网格视图来显示数据。
我显示到属性:
<asp:GridView ItemType="WebUI.FeatureInfoArea.FeatureDesc" AutoGenerateColumns="false" ID="gvFeatList" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<%# Item.Title %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<%# Item.Tip %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
以及我如何绑定到数据源:
FeaturesDesc result = getData();
gvFeatList.DataSource = result.featureDesc;
gvFeatList.DataBind();
这里是 FeaturesDesc 类:
public class FeaturesDesc
{
public List<FeatureDesc> featureDesc { get; set; }
}
public class FeatureDesc
{
public string Title { get; set; }
public string Tip { get; set; }
public string UID { get; set; }
}
在浏览器上创建列时,数据按行显示,但列的标题为空。
我知道我可以在TemplateField 中使用TextHeader 属性,但我希望根据FeatureDesc 类属性动态显示列标题。
如何动态制作显示列的标题?
【问题讨论】:
-
AutoGenerateColumns 指示是否为数据源中的每个字段自动创建绑定字段。 AutoGenerateColumns="false" 表示创建自定义列,您必须手动完成。
标签: c# asp.net .net gridview webforms