C# 如何将列表数组与GridView或DataList绑定?
我已经创建了一个列表数组。该数组有七行,代表一周中的几天,列表中包含医生预约的可用时段。我试图用C# 如何将列表数组与GridView或DataList绑定?,c#,asp.net,gridview,datasource,nested-lists,C#,Asp.net,Gridview,Datasource,Nested Lists,我已经创建了一个列表数组。该数组有七行,代表一周中的几天,列表中包含医生预约的可用时段。我试图用GridView或DataList(更合适的)绑定它,但没有成功 我宣布名单如下: List<string>[] list=new List<string>[7]; //An array of 7 lists for (int i = 0; i < 7; i++) {
GridView
或DataList
(更合适的)绑定它,但没有成功
我宣布名单如下:
List<string>[] list=new List<string>[7]; //An array of 7 lists
for (int i = 0; i < 7; i++)
{
list[i]=new List<string>();
}
List[]List=新列表[7]//由7个列表组成的数组
对于(int i=0;i<7;i++)
{
list[i]=新列表();
}
我已经用字符串填充了列表,这些字符串表示与医生预约的可用时间
我想要实现的结果是,其中一位医生的可用性,如本网站所示:您可以将阵列更改为
列表
,如下所示:
List<List<string>> list = new List<List<string>>();
来源:将列表转换为数据表,然后绑定。数组的数组绑定起来有点复杂。非常感谢。这真的很有帮助,我花了一些时间试图理解这个转换背后的逻辑,作为一个新手,我最终得到了一段小小的代码:
private System.Data.DataTable CreateDataTable(List<string> columnDefinitions, List<List<string>> rows)
{
DataTable table = new DataTable();
foreach (string colDef in columnDefinitions)
{
DataColumn column;
column = new DataColumn();
column.DataType = typeof(string);
column.ColumnName = colDef;
table.Columns.Add(column);
}
for (int i = 0; i < rows[0].Count; i++)
{
table.Rows.Add(rows[0][i], rows[1][i], rows[2][i], rows[3][i], rows[4][i], rows[5][i], rows[6][i]);
}
return table;
}
private List<string> GetColDefsFromBackend()
{
List<string> cols = new List<string>();
cols.Add("Monday");
cols.Add("Tuesday");
cols.Add("Wednesday");
cols.Add("Thursday");
cols.Add("Friday");
cols.Add("Saturday");
cols.Add("Sunday");
return cols;
}
private System.Data.DataTable CreateDataTable(列表列定义,列表行)
{
DataTable=新的DataTable();
foreach(columnDefinitions中的字符串colDef)
{
数据列;
column=newdatacolumn();
column.DataType=typeof(字符串);
column.ColumnName=colDef;
表.列.添加(列);
}
对于(int i=0;i<行[0]。计数;i++)
{
表.行.添加(行[0][i]、行[1][i]、行[2][i]、行[3][i]、行[4][i]、行[5][i]、行[6][i]);
}
返回表;
}
私有列表GetColDefsFromBackend()
{
List cols=新列表();
cols.Add(“星期一”);
cols.Add(“星期二”);
加上“星期三”;
加上“星期四”;
加上(“星期五”);
加上(“星期六”);
加上(“星期日”);
返回cols;
}
我想补充的是,每一列的原始长度各不相同,因此在将列表转换为表格之前,我必须在列表中添加一些新的空项。+1:非常感谢您根据需要调整代码。:)你的回答很有帮助。非常感谢。
private System.Data.DataTable CreateDataTable(List<string> columnDefinitions, List<List<string>> rows)
{
DataTable table = new DataTable();
foreach (string colDef in columnDefinitions)
{
DataColumn column;
column = new DataColumn();
column.DataType = typeof(string);
column.ColumnName = colDef;
table.Columns.Add(column);
}
for (int i = 0; i < rows[0].Count; i++)
{
table.Rows.Add(rows[0][i], rows[1][i], rows[2][i], rows[3][i], rows[4][i], rows[5][i], rows[6][i]);
}
return table;
}
private List<string> GetColDefsFromBackend()
{
List<string> cols = new List<string>();
cols.Add("Monday");
cols.Add("Tuesday");
cols.Add("Wednesday");
cols.Add("Thursday");
cols.Add("Friday");
cols.Add("Saturday");
cols.Add("Sunday");
return cols;
}