zoukankan      html  css  js  c++  java
  • ASP.NET中的跨页发送

    默认情况下,ASP.NET 网页上导致回发的控件(如 Button 控件)会回发到当前页进行处理。但是,可以将控件配置为发送到其他页。
    设置方法是:将该控件的 PostBackUrl 属性设置为 ASP.NET 网页要发送到的页的 URL。
    例如:<asp:Button   ID="Button1"   PostBackUrl="~/TargetPage.aspx"   runat="server"  Text="Submit" />

    由于跨页发送是针对各个控件配置的,所以您可以创建一个可根据用户单击哪个按钮而发送至不同页的页。
    要判断某个页面是否为跨页发送,可以通过属性IsCrossPostBack.

    在实际的编程中,可能经常需要在跨页发送的目标页中获取源页中的某些信息,如控件值或公共属性,下面就介绍一下获取的方法。
    1:获取源页中的控件值
    如果源页和目标页位于同一 ASP.NET 应用程序中,则使用目标页中的 PreviousPage 属性获取
    if (Page.PreviousPage != null)
    {
        TextBox SourceTextBox =(TextBox)Page.PreviousPage.FindControl("TextBox1");
        if (SourceTextBox != null)
        {
            Label1.Text = SourceTextBox.Text;
        }
    }
    如果源页和目标页位于不同的 ASP.NET 应用程序中,则可以从Form集合中获取。(注:同一个应用程序中也可以使用Form集合)
    if (Request.Form["txtName"] != null)
    {
        Response.Write(Request.Form["txtName"].ToString());
    }
    2:获取源页中的公共属性
    若要获取源页的公共成员,必须先获取对源页的强类型引用。
    方法是在目标页中包含一个 @PreviousPageType 指令,该指令允许您指定源页
    <%@ PreviousPageType VirtualPath="~/SourcePage.aspx" %> 

    在源页中,使用如下语句公开了某个文本框的值:
    public String CurrentCity
    {
        get
        {
            return textCity.Text; //主要用于为跨页发送公开值的属性通常是只读属性
        }
    }
    在目标页中:
    Label1.Text = PreviousPage.CurrentCity;

     



  • 相关阅读:
    机器学习:随机森林RF-OBB袋外错误率
    直观判断图像是否可以被实时处理
    职业:图像处理入门教程
    Caffe+Kubuntu16.04_X64+CUDA 8.0配置
    Photoshop显示RGB值问题
    统计:mAP的中文意思
    三维重建:多点透视cvSolvePNP的替代函数(Code)
    SLAM:ORB-SLAM 位姿优化描述
    MxNet : use the MxNet windows versioin
    Python 遍历目录
  • 原文地址:https://www.cnblogs.com/lgzslf/p/1579959.html
Copyright © 2011-2022 走看看