Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# for循环中的网格绑定_C#_Asp.net_Gridview - Fatal编程技术网

C# for循环中的网格绑定

C# for循环中的网格绑定,c#,asp.net,gridview,C#,Asp.net,Gridview,我正在开发一个网站,我需要在其中绑定网格几次{在for循环中} 正如预期的那样,网格将覆盖以前的值并预览最新的迭代结果 您可能需要代码以获得帮助。代码如下:- for (Int32 i = 0; i < k.Length; i++) { business.clsplugins obj = new business.clsplugins(); List<business.clspluginsprp> objprp = new List<

我正在开发一个网站,我需要在其中绑定网格几次{在for循环中} 正如预期的那样,网格将覆盖以前的值并预览最新的迭代结果

您可能需要代码以获得帮助。代码如下:-

for (Int32 i = 0; i < k.Length; i++)
    {
        business.clsplugins obj = new business.clsplugins();
        List<business.clspluginsprp> objprp = new List<business.clspluginsprp>();
        Int32 z = Convert.ToInt32(k.GetValue(i));
        objprp = obj.fnd_plugins(z);
        GridView2.DataSource = objprp;
        GridView2.DataBind();
    }
for(Int32 i=0;i
Cou不能绑定两次。然后调用DataBind()。控件将基于当前数据源重新生成其内容。旧内容被丢弃。因此,您应该使用一个包含所有数据的列表,将其分配给DataSource,然后调用DataBind()

您需要将列表声明和GridView分配移动到for循环之外-现在,您每次迭代都要创建一个新列表,您只需创建一个,然后将其绑定到网格。。例如:

List<business.clspluginsprp> objprp = new List<business.clspluginsprp>();
business.clsplugins obj = new business.clsplugins();

for (Int32 i = 0; i < k.Length; i++)
{

    Int32 z = Convert.ToInt32(k.GetValue(i));
    objprp.Add(obj.fnd_plugins(z));

}

GridView2.DataSource = objprp;
GridView2.DataBind();
List objprp=new List();
business.clsplugins obj=新建business.clsplugins();
对于(Int32 i=0;i
试试这个

这种方法可能会对您有所帮助。从代码中获取概念并以您的方式实现

ASPX:

<asp:PlaceHolder ID="plcSample" runat="server">
</asp:PlaceHolder>
protected void Page_Load(object sender, EventArgs e)
{
    DataSet dsSample = GetDataSet();
    GridView gvSample;
    if (dsSample.Tables.Count > 0 && dsSample.Tables[0].Rows.Count > 0)
    {
        for (int iCount = 0; iCount < dsSample.Tables.Count; iCount++)
        {
            gvSample = new GridView();
            gvSample.DataSource = dsSample.Tables[iCount];
            gvSample.DataBind();
            plcSample.Controls.Add(gvSample);
        }
    }

}

private DataSet GetDataSet()
{
    DataSet ds = new DataSet();
    DataTable dt;

    dt = new DataTable();
    dt.Columns.Add(new DataColumn("ID", typeof(string)));
    dt.Columns.Add(new DataColumn("Code", typeof(string)));
    DataRow dr;
    dr = dt.NewRow();
    dr["ID"] = 1;
    dr["Code"] = "KK";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["ID"] = 2;
    dr["Code"] = "Karan";
    dt.Rows.Add(dr);
    ds.Tables.Add(dt);

    dt = new DataTable();
    dt.Columns.Add(new DataColumn("ID", typeof(string)));
    dt.Columns.Add(new DataColumn("Code", typeof(string)));
    dr = dt.NewRow();
    dr["ID"] = 1;
    dr["Code"] = "AA";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["ID"] = 2;
    dr["Code"] = "Arun";
    dt.Rows.Add(dr);
    ds.Tables.Add(dt);

    return ds;
}

代码隐藏:

<asp:PlaceHolder ID="plcSample" runat="server">
</asp:PlaceHolder>
protected void Page_Load(object sender, EventArgs e)
{
    DataSet dsSample = GetDataSet();
    GridView gvSample;
    if (dsSample.Tables.Count > 0 && dsSample.Tables[0].Rows.Count > 0)
    {
        for (int iCount = 0; iCount < dsSample.Tables.Count; iCount++)
        {
            gvSample = new GridView();
            gvSample.DataSource = dsSample.Tables[iCount];
            gvSample.DataBind();
            plcSample.Controls.Add(gvSample);
        }
    }

}

private DataSet GetDataSet()
{
    DataSet ds = new DataSet();
    DataTable dt;

    dt = new DataTable();
    dt.Columns.Add(new DataColumn("ID", typeof(string)));
    dt.Columns.Add(new DataColumn("Code", typeof(string)));
    DataRow dr;
    dr = dt.NewRow();
    dr["ID"] = 1;
    dr["Code"] = "KK";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["ID"] = 2;
    dr["Code"] = "Karan";
    dt.Rows.Add(dr);
    ds.Tables.Add(dt);

    dt = new DataTable();
    dt.Columns.Add(new DataColumn("ID", typeof(string)));
    dt.Columns.Add(new DataColumn("Code", typeof(string)));
    dr = dt.NewRow();
    dr["ID"] = 1;
    dr["Code"] = "AA";
    dt.Rows.Add(dr);
    dr = dt.NewRow();
    dr["ID"] = 2;
    dr["Code"] = "Arun";
    dt.Rows.Add(dr);
    ds.Tables.Add(dt);

    return ds;
}
受保护的无效页面加载(对象发送方,事件参数e)
{
数据集dsSample=GetDataSet();
网格视图样本;
if(dsSample.Tables.Count>0&&dsSample.Tables[0].Rows.Count>0)
{
对于(int-iCount=0;iCount
您到底需要数据绑定做什么?我不确定我是否理解您想要什么,如果您只想显示最新绑定的结果,您只能在最后一次迭代后调用databind()。我是否错过了这里的要点?为什么要在for循环中绑定GridView?Gridview一次只能显示1个集合,因此多次绑定它会导致性能下降。-1对于如此丑陋的错误代码;)“我需要多次绑定一个网格”是什么意思?你能再解释一下如何绑定GridView2吗?出现了一个错误,它是“System.Collections.Generic.List.Add(business.clspluginsprp)的最佳重载方法匹配项'有一些无效的参数,而另一个错误是:参数1:无法从'System.Collections.Generic.List'转换为'business.clspluginsprp'