页间传值postbackurl问题

Default.aspx 里只有一个BUTTON 和一个TEXT

    protected void Button1_Click(object sender, EventArgs e)
    {
        Button1.PostBackUrl = "~/Default2.aspx"; 
    }

Default2.aspx 里有个TEXT

        if (PreviousPage != null)
        {
            TextBox1.Text = (PreviousPage.FindControl("TextBox1") as TextBox).Text;
        }

-----------------------------------------------------
问 题:在Default.aspx在点击Button1二次才能进入Default2.aspx

解决方法:

protected void Button1_Click(object sender, EventArgs e)
    {
        Button1.PostBackUrl = "~/Default2.aspx"; 
    }
这句代码,作用是把URL地址"~/Default2.aspx"赋给PostBackUrl属性,
当你第一次点击的时候,只起赋值作用,
第二次点击的时候,Button才执行PostBackUrl属性的机制,将页面跳转到你想跳转到的页面。

你可以在前台直接将URL地址赋给PostBackUrl属性即可。

  法一:HTML code
<asp:Button ID="Button1" runat="server" PostBackUrl="~/Default2.aspx" Text="baidu" />
或者,
法二:在后台写的话
C# code
protected void Button1_Click(object sender, EventArgs e) { this.Button1.PostBackUrl ="~/Default2.aspx Button1_Click(this,e); }
法三:还可以把这句 Button1.PostBackUrl = "~/Default2.aspx"; 写在page_load 里
posted @ 2009-05-06 16:39  .NET钉子户  阅读(1207)  评论(1)    收藏  举报