0

我是 csharp 和 asp.net 的新手,无论如何,我正在用 asp.net 和 csharp 编写一个 Web 应用程序;在我的 default.aspx 中,我有按钮,如果我单击按钮,我想打开不同的页面(例如 asdfg.aspx)。为此,我在 default.aspx 中编写了以下代码:

 <asp:Button ID="button1" runat="server" Text="Click Button" OnClick="ButtonClick" /> 

在我的 default.aspx.cs 我创建了这个代码段:

public void ButtonClick(Object sender, EventArgs e)
{


}

之后我能做什么?谢谢

ps对不起我的英语。

4

4 回答 4

3
public void ButtonClick(Object sender, EventArgs e)
{
    Response.Redirect("~/asdfg.aspx");

}

只是一个通知:句柄不应该是一个公共方法,实例化 Page 类并从另一个类调用它并不少见。因此,您可以将其设为受保护或私有。

tilda 符号(前缀)“~”在 ASP .Net 中是特殊的。这意味着新位置与应用程序相关,可能因网站根目录而异。一个网站可以有多个应用程序(即,您可以拥有主站点和另一个名为 admin 的“子站点”)。如果您在管理应用程序中,ASP .Net 知道如何构建与管理相关的新位置,而不是与根网站相关的位置。

于 2012-04-24T07:52:59.610 回答
0

您可以使用

Response.Redirect(urlstring);

在 ButtonClick 方法中

于 2012-04-24T07:53:37.037 回答
0
public void ButtonClick(Object sender, EventArgs e) 
{  
      Response.Redirect("~/asdfg.aspx");  
} 
于 2012-04-24T07:56:33.337 回答
0

您可以使用Server.Transfer("url")Response.Redirect("url")

Response.Redirect 只是将消息向下发送到(HTTP 302)浏览器。

Server.Transfer 在浏览器一无所知的情况下发生,浏览器请求一个页面,但服务器返回另一个页面的内容。

public void ButtonClick(Object sender, EventArgs e)
{
response.Redirect("~/asdfg.aspx");

}
于 2012-04-24T07:58:06.410 回答