0

我有这个按钮事件:

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部分中,我在数据库中添加条目。在页面中有带有相应值的标签/文本框。

一切正常。但是,单击此提交按钮后,我需要刷新页面才能查看更改。

我已经if(!IsPostBack)在 PageLoad 代码的开头添加了,但我仍然需要访问另一个页面/回来查看更改。

有任何想法吗?

谢谢。


谢谢您的回复。我正在使用列表视图:

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 内容应该得到更新。

4

2 回答 2

1

如果您不想刷新页面并且您正在使用 asp.net webforms,您可以使用 UpdatePanel 并将所有控件放在其中,等等......这将保留在表单/显示中所做的更改当您提交信息。我假设表单正在提交更改/新数据,因为您没有具体说明数据是如何更新/更改的。

如果您不想使用更新面板,那么当页面回发时,您必须为要使用“newFriend”对象中的值更新的 UI 控件设置值(我假设具有更改的值)。

于 2013-06-17T06:44:15.110 回答
-1

找到了!

此问题的解决方案是在提交按钮单击事件的末尾添加此代码:

Server.Transfer("currentpage.aspx");
于 2013-06-18T19:59:23.903 回答