将值从一个网页中的asp.net控件传递到另一个网页中的asp.net控件

时间:2011-02-03 07:12:40

标签: c# asp.net

我有一个网页'WPwp1.aspx'和另一个网页'FLcourt.aspx'

WPwp1.aspx我有DropDownList2,DropDownList3,TextBox1,TextBox2,TextBox3和LinkBut​​ton1

  • 点击我想要的链接按钮 重定向到FLcourt.aspx
  • FLcourt.aspx也有控件 在那里 WPwp1.aspx(DropDownList2,DropDownList3,TextBox1中,TextBox2中,TextBox3)

当用户在WPwp1.aspx中出现的控件中输入值并点击LinkBut​​ton1时,用户应该能够在“WPwp1.aspx”中看到所有给出的值到asp.net控件中在'FLcourt.aspx'。

如何将网页中某些控件中输入的值传递给另一个网页中的类似控件?

5 个答案:

答案 0 :(得分:1)

是的,您有几种选择:

  • 使用会话变量。这是一种不太可扩展的方式。就在Response.Redirect之前,存储 您在Session中的值,并将其放入目标网页的Page_Load
  • 使用QueryString。传递查询字符串中的值:

    Response.Redirect(
        string.Format("FLcourt.aspx?value1={0}&value2={1}",
                      HttpUtility.UrlEncode(value1), 
                      HttpUtility.UrlEncode(value2)));
    

    在第二页:

    var value1 = Request.QueryString["value1"];
    

<强>更新

  • 使用Cookie(客户端的浏览器必须启用它们)。在重定向之前设置cookie:

    Response.Cookies["MyValues"]["Value1"] = value1;
    

    在目标网页中:

    if(Request.Cookies["MyValues"] != null)
    {
       var value1 = Request.Cookies["MyValues"]["Value1"];
       //...
    }
    

(但你必须检查Request.Cookies["MyValues"]之前是否为空)

答案 1 :(得分:0)

请参阅:http://msdn.microsoft.com/en-us/library/6c3yckfw.aspx

直接总结并回答您的问题,您可以:

  • 使用查询字符串。
  • 从源页面获取HTTP POST信息。

由于两个页面似乎都在同一个Web应用程序中,您还可以:

  • 使用会话状态。
  • 在源页面中创建公共属性并访问目标页面中的属性值。
  • 使用PreviousPage对象从源页面中的控件获取目标页面中的控制信息。此选项具有特定的性能劣势,因为对PreviousPage的调用会导致对象的实例化及其生命周期的处理,但不包括PreRender

但有时候,使用PanelMultiView控件避免跨页回发并模拟多个页面/阶段会更简单。

答案 2 :(得分:0)

你可以尝试一下。

  1. 在源页面(“WPwp1.aspx”)中为每个控件创建属性,即DropDownList2,DropDownList3,TextBox1,TextBox2,TextBox3。

  2. 将链接按钮的“PostBackUrl”属性提供给您要重定向的页面,在您的情况下,它将是“FLcourt.aspx”。

  3. 在目标页面(“FLcourt.aspx”)中,在“PreviousPage”类的帮助下访问上一页。该类将为您提供在point1中编写的属性。

  4. 希望这有帮助!

    此致

    萨马

答案 3 :(得分:0)

  1. 使用会话
  2. 使用cookies
  3. 使用应用程序(全局)
  4. 回发网址
  5. 查询字符串
  6. Server.Transfer的
  7. 静态变量(全局)

答案 4 :(得分:0)