Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.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# ASP.NET在GridView中动态添加行未添加超过2行_C#_Asp.net_Gridview - Fatal编程技术网

C# ASP.NET在GridView中动态添加行未添加超过2行

C# ASP.NET在GridView中动态添加行未添加超过2行,c#,asp.net,gridview,C#,Asp.net,Gridview,我是在SP07 Web部件的C#类库上创建gridView并动态添加行的 。 我的问题是我单击按钮(创建)添加的行数不超过2行。 这是创建按钮: void addBtn_Click(object sender, EventArgs e) { AddNewRowFun(); } 我的AddNewRowFun()方法: private void AddNewRowFun() { int rowIndex = 0; i

我是在SP07 Web部件的C#类库上创建gridView并动态添加行的

我的问题是我单击按钮(创建)添加的行数不超过2行。

这是创建按钮:

    void addBtn_Click(object sender, EventArgs e)
    {
        AddNewRowFun();
    }
我的AddNewRowFun()方法:

private void AddNewRowFun()
    {
        int rowIndex = 0;
        if (ViewState["Curtbl"] != null)
        {
            DataTable dt = (DataTable)ViewState["Curtbl"];
            DataRow drCurrentRow = null;
            if (dt.Rows.Count > 0)
            {
                for (int i = 1; i <= dt.Rows.Count; i++)
                {
                    TextBox txt1 = (TextBox)myGrid.Rows[rowIndex].Cells[1].FindControl("txt1");
                    DateTimeControl dt1 = (DateTimeControl)myGrid.Rows[rowIndex].Cells[2].FindControl("dt1");
                    DateTimeControl dt2 = (DateTimeControl)myGrid.Rows[rowIndex].Cells[3].FindControl("dt2");
                    TextBox txt2 = (TextBox)myGrid.Rows[rowIndex].Cells[4].FindControl("txt2");
                    TextBox txt3 = (TextBox)myGrid.Rows[rowIndex].Cells[5].FindControl("txt3");

                    drCurrentRow = dt.NewRow();
                    drCurrentRow["rowid"] = i + 1;
                    dt.Rows[i - 1]["txt1"] = txt1.Text;
                    dt.Rows[i - 1]["dt1"] = dt1.SelectedDate;
                    dt.Rows[i - 1]["dt2"] = dt2.SelectedDate;
                    dt.Rows[i - 1]["txt2"] = txt2.Text;
                    dt.Rows[i - 1]["txt3"] = txt3.Text;
                    rowIndex++;
                }
                dt.Rows.Add(drCurrentRow);
                ViewState["Curtbl"] = dt;
                myGrid.DataSource = dt;
                myGrid.DataBind();
            }
        }
        else
        {
            //Response.Write("ViewState Value is Null");
        }
        SetOldData();
private void AddNewRowFun()
{
int rowIndex=0;
如果(ViewState[“Curtbl”]!=null)
{
DataTable dt=(DataTable)视图状态[“Curtbl”];
DataRow drCurrentRow=null;
如果(dt.Rows.Count>0)
{

对于(int i=1;i,根据您对最多5行的评论,请修改您的方法,如下所示:

private void AddNewRowFun()
{
    if (dt.Rows.Count < 6)
    {
         [all your code here]
    }
}
private void AddNewRowFun()
{
如果(dt.Rows.Count<6)
{
[此处显示所有代码]
}
}

希望这个解决方案对你有帮助。

我不知道你的代码到底在做什么,但是考虑一下移动<代码> Dt.Road。添加(DrCurrTrn);< /Cube > < <代码> > < /Calp>循环体。我遵循这个教程。你的“for”循环不在第三点击“创建”按钮。请查看你的条件:<代码>(int i=1;我想限制最多添加5行。添加超过2行的解决方案?请尝试以下操作:
for(int i=dt.rows.Count;i