ASP.NET跨页面的控件调用
ASP.NET3.5可以很简答的实现一个很有用的功能,既跨页面传送,
传统的提交窗体只会将窗体提交给它自己。而跨页面的提交,
会将page1的内容传送个page2,并在page2中使用page1中的控件。
① 跨页面传递的简单实现
页面一(Default.aspx)中的控件
<asp:TextBox ID="txtPageDefault" runat="server"></asp:TextBox>
<asp:Button ID="btnToPostBackPage" runat="server" Text="跨窗体提交"
PostBackUrl="~/PostBackPage.aspx" style="height: 21px" />
页面一的后台代码是不需要的,只要PostBackUrl="~/PostBackPage.aspx"这样注明要提交的目标页面就可以了
页面二(PostBackPage.aspx)前台控件
<asp:TextBox ID="txtPagePostBack" runat="server"></asp:TextBox>
页面二后台代码
TextBox box = (TextBox)PreviousPage.FindControl("txtPageDefault");
txtPagePostBack.Text = "前窗体内容:" + box.Text;
由此可以看到,实际上只要对提交按钮的PostBackUrl属性进行设置,就可以在目标页面很容易的访问到被提交的前一页面的空间内容
② 直接通过属性来访问前页面的控件
编译器会将页面中的控件编译为页面类之外不可访问的类型,所以为了使用PreviousPage类直接访问前页面的内容我们需要用设置属性的方式,将我们需要访问的控件公开
就上一个类子来看,首先我们需要向Default页面的后台田间代码,
表明属性DefaultText 来返回当前页面的TextBox控件
public partial class _Default : System.Web.UI.Page
{
public TextBox DefaultText
{
//定义为只读
get { return txtPageDefault; }
}
protected void Page_Load(object sender, EventArgs e)
相关文档:
Default.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" & ......
ASP。NET中共有几种类型的控件
========================================
两种:
1. 客户端控件,也就是我们在HTML中经常用到的
2. 服务端控件,例如: <asp:TextBox ID="txt" runat="server" />
客户端控件也可以转成服务端控件
<input type="text" id="txt" runat="server" />
HTML 和 WEB
ASP。NET ......
几个月前,做用户注册模块要用到发送邮件功能,也碰到了些或大或小的问题,现在总结一下:
我先贴出发送邮件用到的代码:
public void SendEmail(string stremail, string content,string title)
{
MailMessage mm = new MailMessage();
mm.from = new MailAddress(公司邮箱) ......
在开发ISO文件管理系统的时候,曾经遇到过要将ASPX直接输出到EXCEL的需求,现将经验所得与大家分享。 其实,利用ASP.NET输出指定内容的WORD、EXCEL、TXT、HTM等类型的文档很容易的。主要分为三步来完成。
一、定义文档类型、字符编码
Response.Clear();
Response.Buffer= true;
Response ......