C# 在容器中找不到数据项。容器必须实现IDataItemContainer,或者具有名为DataItem的属性
我正在尝试将字符串数组绑定到网格视图。使用下面显示错误的给定代码时,C# 在容器中找不到数据项。容器必须实现IDataItemContainer,或者具有名为DataItem的属性,c#,asp.net,arrays,gridview,C#,Asp.net,Arrays,Gridview,我正在尝试将字符串数组绑定到网格视图。使用下面显示错误的给定代码时,“在容器中找不到数据项。容器必须实现IDataItemContainer,或具有名为DataItem的属性。”请帮助我找到正确的解决方案。多谢各位 代码: protectedvoid ddlcirle\u SelectedIndexChanged(对象发送方,事件参数e) { ShadingAnalysisDataSetTableAdapters.tbl_cadengineers团队表格适配器cd; cd=新的ShadingAn
“在容器中找不到数据项。容器必须实现IDataItemContainer,或具有名为DataItem的属性。”
请帮助我找到正确的解决方案。多谢各位
代码:
protectedvoid ddlcirle\u SelectedIndexChanged(对象发送方,事件参数e)
{
ShadingAnalysisDataSetTableAdapters.tbl_cadengineers团队表格适配器cd;
cd=新的ShadingAnalysisDataSetTableAdapters.tbl_cadengineeringersTeamTableAdapter();
DataTable dt=新的DataTable();
dt=cd.GetAvailableData(ddlCircle.SelectedValue);//获取未分配站点的详细信息
int x,y;//z;
DataTable dt3=新的DataTable();
dt3=cd.GetTeam();
y=dt3.Rows.Count;
x=dt.Rows.Count;//计算未指定的站点
DataTable dt2=新的DataTable();
dt2=cd.GetAssignTeam(x);//基于计数获取团队
string[]arr=新字符串[dt2.Rows.Count];
int i=0;
foreach(dt2.Rows中的数据行r)
{
arr[i]=r[“Team”].ToString();//将可用的团队分配给数组
i++;
}
string[]strArr=新字符串[100];//要复制arr值的另一个数组。
i=0;int j=0;
虽然(j定义GridView的列,使其绑定到您的数据表的团队
列,并将数据表
直接分配到GridView
作为数据源
。然后数据绑定到数据表
定义GridView的列,使其绑定到团队ode>列,并将DataTable
直接分配给GridView
作为DataSource
。然后将DataBind
分配给DataTable
将数组绑定到DataGrid就像把香蕉放在蛋盘里一样。请您必须根据datagri绑定一个具有结构的源d、 正如@Konstantin d-Infragistics所建议的那样,将数组绑定到DataGrid就像把香蕉放在蛋盘里一样。请您必须根据DataGrid绑定一个具有结构的源。正如@Konstantin d-Infragistics所建议的那样,现在gridview显示strArr[j]数组值
protected void ddlCircle_SelectedIndexChanged(object sender, EventArgs e)
{
ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter cd;
cd = new ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter();
DataTable dt = new DataTable();
dt = cd.GetAvailableData(ddlCircle.SelectedValue); // Getting details of unassigned site
int x, y; //z;
DataTable dt3 = new DataTable();
dt3 = cd.GetTeam();
y = dt3.Rows.Count;
x = dt.Rows.Count; // counting the unassinged sites
DataTable dt2 = new DataTable();
dt2 = cd.GetAssignTeam(x); //Getting team based on count
string[] arr = new string[dt2.Rows.Count];
int i = 0;
foreach (DataRow r in dt2.Rows)
{
arr[i] = r["Team"].ToString(); // assigning available team to array
i++;
}
string[] strArr = new string[x+1]; // another array to copy arr values.
i = 0; int j = 0;
while (j <= x)
{
strArr[j]= arr[i] ; // copying the arr[] values into strArr[] based on count.
i++;
j++;
if (i == 3)
{
i = 0;
}
}
GridView2.DataSource = strArr;
GridView2.DataBind();
}
protectedvoid ddlcirle\u SelectedIndexChanged(对象发送方,事件参数e)
{
ShadingAnalysisDataSetTableAdapters.tbl_cadengineers团队表格适配器cd;
cd=新的ShadingAnalysisDataSetTableAdapters.tbl_cadengineeringersTeamTableAdapter();
DataTable dt=新的DataTable();
dt=cd.GetAvailableData(ddlCircle.SelectedValue);//获取未分配站点的详细信息
int x,y;//z;
DataTable dt3=新的DataTable();
dt3=cd.GetTeam();
y=dt3.Rows.Count;
x=dt.Rows.Count;//计算未指定的站点
DataTable dt2=新的DataTable();
dt2=cd.GetAssignTeam(x);//基于计数获取团队
string[]arr=新字符串[dt2.Rows.Count];
int i=0;
foreach(dt2.Rows中的数据行r)
{
arr[i]=r[“Team”].ToString();//将可用的团队分配给数组
i++;
}
string[]strArr=新字符串[x+1];//另一个要复制arr值的数组。
i=0;int j=0;
而(j现在gridview显示strArr[j]数组值
protected void ddlCircle_SelectedIndexChanged(object sender, EventArgs e)
{
ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter cd;
cd = new ShadingAnalysisDataSetTableAdapters.tbl_CadEngineersTeamTableAdapter();
DataTable dt = new DataTable();
dt = cd.GetAvailableData(ddlCircle.SelectedValue); // Getting details of unassigned site
int x, y; //z;
DataTable dt3 = new DataTable();
dt3 = cd.GetTeam();
y = dt3.Rows.Count;
x = dt.Rows.Count; // counting the unassinged sites
DataTable dt2 = new DataTable();
dt2 = cd.GetAssignTeam(x); //Getting team based on count
string[] arr = new string[dt2.Rows.Count];
int i = 0;
foreach (DataRow r in dt2.Rows)
{
arr[i] = r["Team"].ToString(); // assigning available team to array
i++;
}
string[] strArr = new string[x+1]; // another array to copy arr values.
i = 0; int j = 0;
while (j <= x)
{
strArr[j]= arr[i] ; // copying the arr[] values into strArr[] based on count.
i++;
j++;
if (i == 3)
{
i = 0;
}
}
GridView2.DataSource = strArr;
GridView2.DataBind();
}
protectedvoid ddlcirle\u SelectedIndexChanged(对象发送方,事件参数e)
{
ShadingAnalysisDataSetTableAdapters.tbl_cadengineers团队表格适配器cd;
cd=新的ShadingAnalysisDataSetTableAdapters.tbl_cadengineeringersTeamTableAdapter();
DataTable dt=新的DataTable();
dt=cd.GetAvailableData(ddlCircle.SelectedValue);//获取未分配站点的详细信息
int x,y;//z;
DataTable dt3=新的DataTable();
dt3=cd.GetTeam();
y=dt3.Rows.Count;
x=dt.Rows.Count;//计算未指定的站点
DataTable dt2=新的DataTable();
dt2=cd.GetAssignTeam(x);//基于计数获取团队
string[]arr=新字符串[dt2.Rows.Count];
int i=0;
foreach(dt2.Rows中的数据行r)
{
arr[i]=r[“Team”].ToString();//将可用的团队分配给数组
i++;
}
string[]strArr=新字符串[x+1];//另一个要复制arr值的数组。
i=0;int j=0;
虽然(j strArr[j]它包含一组值,但如何将数组strArr绑定到GridView您无法绑定该数组。您需要一个DataItemContainer,因此不要创建数组,请创建一个DataTable,例如。strArr[j]它包含一组值,如何将数组strArr绑定到GridView您无法绑定数组。您需要DataItemContainer,因此不要创建数组,例如创建DataTable。