【发布时间】:2013-06-12 19:57:35
【问题描述】:
我有这个按钮事件:
protected void AddDetails_Click(object sender, EventArgs e)
{
DataSetTableAdapters.SelectFriendsTableAdapter sft = new DataSetTableAdapters.SelectFriendsTableAdapter();
try
{
sft.AddFriend(current, newFriend, false);
}
catch
{
error.Text = "Something happened. Bummer!";
}
}
在try 部分,我在数据库中添加条目。在页面中有对应值的标签/文本框。
一切正常。但是,单击此提交按钮后,我需要刷新页面才能看到更改。
我已经在 PageLoad 代码的开头添加了if(!IsPostBack),但我仍然需要访问另一个页面/回来查看更改。
有什么想法吗?
谢谢。
感谢您的回复。我正在使用 ListView:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DataSetTableAdapters.SelectFriendsTableAdapter sdt = new DataSetTableAdapters.SelectFriendsTableAdapter();
DataTable tab = sdt.SelectFriends();
ListView1.DataSource = tab;
ListView1.DataBind();
}
}
,所以 ListView 内容应该得到更新。
【问题讨论】:
-
究竟应该改变什么?文本框中的值?您有要刷新的网格吗?
-
什么将值绑定到页面上的标签/文本框?此外, if(!IsPostBack) 只会执行一次逻辑,因为初始页面加载是唯一一次不是回发,后续对页面的请求而不导航到其他地方被视为回发。您想要的是在成功完成数据库更新(您发布的代码中的尝试逻辑)后触发将值绑定到页面上的控件(标签/文本框)的机制。
标签: c# asp.net refresh pageload ispostback