我正在努力为gridview创建一系列代码隐藏的模板字段。数据源是一个对象,在此对象中是另一个对象,它是一个具有一系列属性的列表对象。我想要的是在列中显示所有内容。 List中的每个元素都是一列,并且元素中的每个值都要显示在列中。例如,如果我在List中有5个元素,它有两个值,那么我想要5列并显示这两个值。
Seaching我发现只有使用ITemplate的基于数据库源的示例,我试图使用它,但是无法工作。
任何人都可以帮忙吗?
MarkUp就是
<asp:GridView runat="server" ID="grdvwMyTable" AutoGenerateColumns="false"/>
在后面的代码中,我的自定义控件上的页面加载事件
MyObject obj = new MyObject();
MyMapper map = new MyMapper();
obj = map.MapObjects();
TemplateField dayOne = new TemplateField();
dayOne.HeaderText = obj.WeeklyShifts.Select(a=> a.StartTime)//<- Weekly Shifts is a List and Start Time is a property of this object.
dayOne.ItemTemplate = new AddTemplateToGridView(ListItemType.Item, obj.WeeklyShifts.Select(a=> a.ShiftName)// <- This is also part of the List object.
如您所见,我正在尝试从列表对象创建列。我的List对象中有五个元素叫WeeklyShifts
,它本身就是obj的一部分。我希望将开始时间作为我的标题,并在列中添加ShiftName
以及该列中还有一些其他值,但我需要重复此模式5次,即5天。