because you have to remember to re-create the rows you created in the previous postbacks
解决方案 »
- SOAOffice提供Word/Excel动态数据填充
- ◎◎◎ MonthCalendar 日历控件多选日期的使用,有点难度◎◎◎
- 窗口中的控件问题 50分
- 如何在程序集中加入一个新的程序集?
- c#编写桌面显示程序
- 如何在程序中调用.MSC
- sInputStr=Replace(sInputStr,Chr(13)&Chr(10),vbcrlf) 如何用C#表示呢?
- 请各位同胞指点迷津!
- 我做错了,但不知道对的应该怎么做。这是一个关于dataset的问题。请你们帮帮我!
- 在 IT 做了 10 年月薪的范围
- 拖放IE中的链接到我的Form上,如何知道拖动的网址?
- 关于使用C#操作word的一个问题,请问如何知道一个文档已经关闭了?
我重新写了一个过程
变量名也不一样,
结果也如此,
saucer(思归, MS .NET MVP)
谢谢,问题出在那里?????
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<script runat="Server">void CreateTable()
{
TableN.Controls.Clear();
if (ViewState["TableState"] != null)
{
DataTable dt = (DataTable)ViewState["TableState"];
foreach (DataRow dr in dt.Rows)
{
TableRow tr = new TableRow();
foreach (DataColumn dc in dt.Columns)
{
TableCell tc = new TableCell();
tc.Text = dr[dc].ToString();
tr.Cells.Add(tc);
} TableN.Rows.Add(tr);
}
}
}void Page_Load(Object o, EventArgs e)
{
if (ViewState["TableState"] != null)
{
CreateTable();
}
}void AddNewRow(Object o, EventArgs e)
{ DataTable dt;
if (ViewState["TableState"] == null)
{
dt = new DataTable();
dt.Columns.Add("Column1",typeof(string));
dt.Columns.Add("Column2",typeof(string));
//..... ViewState["TableState"] = dt;
}
else
dt = (DataTable)ViewState["TableState"]; DataRow dr = dt.NewRow();
dr["Column1"] = "1:" + DateTime.Now.ToString();
dr["Column2"] = "2:" + DateTime.Now.ToString();
dt.Rows.Add(dr);
CreateTable();
}
</script>
<form runat="server">
<asp:Table id="TableN" runat="server" EnableViewState="false"/>
<asp:Button id="btn" runat="server" Text="AddNew" OnClick="AddNewRow" />
<asp:Button id="btn2" runat="Server" Text="Submit" />
</form>
没有保存自己的状态,你需要自己写保存代码,用ViewState就可以了,上面的说的很对
我是接分的,多给点分吧!