0
我有一个Arraylist
其中所有的项目都是类型object[2]
。如何将包含object []类型的项目的Arraylist绑定到GridView?
如何将它绑定到GridView?
我需要能够在BoundField
上设置DataField
属性,但我不知道如何使用object[]
来做到这一点。
感谢您的回复!
我有一个Arraylist
其中所有的项目都是类型object[2]
。如何将包含object []类型的项目的Arraylist绑定到GridView?
如何将它绑定到GridView?
我需要能够在BoundField
上设置DataField
属性,但我不知道如何使用object[]
来做到这一点。
感谢您的回复!
Linq
生成匿名对象列表。
if (!IsPostBack)
{
List<object[]> list = new List<object[]>();
list.Add(new object[] {11,22 });
list.Add(new object[] { 21, 32 });
var result = from ar in list
select new
{
Data1=ar[0].ToString(),
Data2=ar[1].ToString()
};
GridView1.DataSource = result.ToList();
GridView1.DataBind();
}
OR
使用TemplateField
和绑定元件经由。
<asp:GridView ID="GridView1"
runat="server"
AutoGenerateColumns="False" >
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:Literal
ID="lit1"
runat="server"
Text='<%#Eval("[0]") %>' />
<asp:Literal
ID="lit2"
runat="server"
Text='<%#Eval("[1]") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
代码隐藏,因为我在代码中创建GridView的后面添加一个TemplateField将需要大量的代码
if (!IsPostBack)
{
List<object[]> list = new List<object[]>();
list.Add(new object[] {11,22 });
list.Add(new object[] { 21, 32 });
GridView1.DataSource = list;
GridView1.DataBind();
}
无法使用第二个方法。第一种方法很好。必须使用以下代码将ArrayList转换为列表