2012-04-13 80 views
-1

在我的Ascx页面上,我有2个按钮,这些按钮重定向到同一页面atm。 (因为页面应该完全相同)。在Page_Load()方法中,sender参数没有任何参数。我如何告诉Page_Load事件哪个按钮被点击?所以我可以加载不同的数据取决于哪个按钮被点击?Asp.net 2按钮返回不同数据的相同页面

有没有办法更动态地做到这一点?或者我必须为每个按钮创建一个单独的页面?

+2

传递queryString并有所作为。 – 2012-04-13 11:31:09

+0

查询字符串已经包含一个GUID,但我将创建一个单独的页面,只是希望我能绕过它一些如何 – Timsen 2012-04-13 11:34:05

+1

不能传递queryString中的两个值:Response.Redirect(“Default.aspx?guid = 1&btn = 2" ); – 2012-04-13 11:43:56

回答

1

我不知道你想干什么,这可能是愚蠢的东西,但你仍然可以通过在负载情况下

if(Request.QueryString["id"]==1) 
button1 
else 
button2 

你也可以做这样的事情

Button1_Click 
Response.Redirect("Default.aspx?id=1") 

Button2_Click 
Response.Redirect("Default.aspx?id=2") 

然后实现这一多个参数到这样的页面

Response.Redirect("Default.aspx?id=1&name=xyz") 

并检索它

Request.QueryString["name"]=="xyz" 
+0

那么我也可以添加一个新的页面:P – Timsen 2012-04-13 11:33:21

+0

@Timsen你究竟想要什么,我提供的解决方案不适合你吗? – freebird 2012-04-13 11:34:31

+1

@Timsen创建不同的页面将是一个更好的解决方案 – freebird 2012-04-13 11:35:43

1

的按钮,点击该回发事件被称为右在Page_Load中,你可以告诉哪个按钮被点击,然后做对的OnPreRender方法的一些东西

或者,也许我误解和你重定向到另一个页面。在这种情况下,我使用Ashwini Verma,添加一些查询字符串或通过Session传递一些var。选择是你的

相关问题