protected void ibtnSumAdd_Click(object sender, ImageClickEventArgs e)
{
string[] fillString = new string[11];
fillString[0] = this.txtSumClientName .Text .ToString ().Trim ();
fillString[1] = this.txtSumProjectName .Text.ToString().Trim();
fillString[2] = this.txtSumContractNo .Text.ToString().Trim();
fillString[3] = this.dropLine .Text.ToString().Trim();
fillString[4] = this.dropType .Text.ToString().Trim();
fillString[5] = this.txtSumPrice .Text.ToString().Trim();
fillString[6] = this.txtSumAmount .Text.ToString().Trim();
fillString[7] = this.txtSumAmountSum .Text.ToString().Trim();
fillString[8] = this.txtSumFillMan .Text.ToString().Trim();
fillString[9] = this.txtSumFillDate .Text.ToString().Trim();
fillString[10] = this.txtSumRe .Text.ToString().Trim(); TableRow row = new TableRow();
for (int i = 0; i < fillString.Length ; i++)
{
TableCell cell = new TableCell();
cell.Text = fillString [i];
row.Cells.Add(cell);
}
this.Table1.Rows.Add(row);
this.PanelSum.Visible = true;
}
单击后,能够形成一新行。但是再点击后,不再形成新行,该怎么修改。急!
{
string[] fillString = new string[11];
fillString[0] = this.txtSumClientName .Text .ToString ().Trim ();
fillString[1] = this.txtSumProjectName .Text.ToString().Trim();
fillString[2] = this.txtSumContractNo .Text.ToString().Trim();
fillString[3] = this.dropLine .Text.ToString().Trim();
fillString[4] = this.dropType .Text.ToString().Trim();
fillString[5] = this.txtSumPrice .Text.ToString().Trim();
fillString[6] = this.txtSumAmount .Text.ToString().Trim();
fillString[7] = this.txtSumAmountSum .Text.ToString().Trim();
fillString[8] = this.txtSumFillMan .Text.ToString().Trim();
fillString[9] = this.txtSumFillDate .Text.ToString().Trim();
fillString[10] = this.txtSumRe .Text.ToString().Trim(); TableRow row = new TableRow();
for (int i = 0; i < fillString.Length ; i++)
{
TableCell cell = new TableCell();
cell.Text = fillString [i];
row.Cells.Add(cell);
}
this.Table1.Rows.Add(row);
this.PanelSum.Visible = true;
}
单击后,能够形成一新行。但是再点击后,不再形成新行,该怎么修改。急!
for (int i = 0; i < fillString.Length ; i++)
{
row[i]=fillString[i];
}
this.Table1.Rows.Add(row);
this.PanelSum.Visible = true;
用ViewState["NewTable"]来保存上次的datatable状态 if (ViewState["NewTable"]==null)
{
ViewState["NewTable"]=this.Table1.Clone();
} string[] fillString = new string[11];
fillString[0] = this.txtSumClientName .Text .ToString ().Trim ();
fillString[1] = this.txtSumProjectName .Text.ToString().Trim();
fillString[2] = this.txtSumContractNo .Text.ToString().Trim();
fillString[3] = this.dropLine .Text.ToString().Trim();
fillString[4] = this.dropType .Text.ToString().Trim();
fillString[5] = this.txtSumPrice .Text.ToString().Trim();
fillString[6] = this.txtSumAmount .Text.ToString().Trim();
fillString[7] = this.txtSumAmountSum .Text.ToString().Trim();
fillString[8] = this.txtSumFillMan .Text.ToString().Trim();
fillString[9] = this.txtSumFillDate .Text.ToString().Trim();
fillString[10] = this.txtSumRe .Text.ToString().Trim(); TableRow row = new TableRow();
for (int i = 0; i < fillString.Length ; i++)
{
TableCell cell = new TableCell();
cell.Text = fillString [i];
row.Cells.Add(cell);
} ((DataTable)ViewState["NewTable"]).Rows.Add(row); this.Table1=((DataTable)ViewState["Table1"]).Copy(); //this.Table1.Rows.Add(row);
this.PanelSum.Visible = true;
=>>
this.Table1=((DataTable)ViewState["NewTable"]).Copy();
改成 TableRow row = this.Table1.NewRow();
没有NewRow()这个方法吗?怎么引用不出来?
function AddTableRow(ParentID)/*新增table行*/
{
//传入参数说明
//ParentID 为datagrid id
var ColCount=document.getElementById(ParentID).rows[0].cells.length;//得到总列数
var RowCount=document.getElementById(ParentID).rows.length-1;//得到总行数
var Row=document.getElementById(ParentID).insertRow(document.getElementById(ParentID).rows.length); //插入行
//Row.className="relativeTag";
for(i=0;i<ColCount;i++)//插入列
{
var Col = Row.insertCell(i);
Col.innerHTML=document.getElementById(ParentID).rows[RowCount].cells[i].innerHTML;
}
}
string[] fillString = new string[ 5 ];
fillString[ 0 ] = this.TextBox2.Text.ToString().Trim();
fillString[ 1 ] = this.TextBox3.Text.ToString().Trim();
fillString[ 2 ] = this.TextBox4.Text.ToString().Trim();
fillString[ 3 ] = this.TextBox5.Text.ToString().Trim();
fillString[ 4 ] = this.TextBox6.Text.ToString().Trim(); data.rowDatas = fillString;
List<DataClass> rows = new List<DataClass>();
if( ViewState[ "rows" ] != null )
{
rows = ( List<DataClass> )ViewState[ "rows" ];
}
rows.Add( data );
foreach( DataClass data1 in rows )
{
fillString = data1.rowDatas;
TableRow row = new TableRow();
for( int i = 0; i < fillString.Length; i++ )
{
TableCell cell = new TableCell();
cell.Text = fillString[ i ];
row.Cells.Add( cell );
}
this.Table1.Rows.Add( row );
}
ViewState.Add( "rows", rows );using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;namespace WebApplication1
{
[Serializable]
public class DataClass
{
public string[] rowDatas = new string[ 5 ];
}
}
这样是可以的。
如果你用数据库的话就重新读一遍数据就可以了