asp.net——动态加载控件
2007-04-02 13:58
316 查看
我们经常使用PlaceHolder或者Panel 作为容器来动态加载控件,使用LiteralControl来装载html。
在页面上拖放一个PlaceHolder控件,添加以下代码可了解这种应用。
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
...{
protected void Page_Load(object sender, EventArgs e)
...{
//注册脚本
this.RegisterScript();
//
//动态加载控件
//
Panel panel1 = new Panel();
panel1.Width = new Unit("200px");
//增加一个html下拉框控件
string htmlString = " <SELECT ID="oCar" SIZE="1" onchange="fnChange(this)">"
+ " <OPTION VALUE="1">宝马"
+ "<OPTION VALUE="2">保时捷"
+ "<OPTION VALUE="3" SELECTED>奔驰"
+ "</SELECT>";
panel1.Controls.Add(new LiteralControl(htmlString));
//甚至还可以将panel放到PlaceHolder(通常情况下在页面上直接放置一个panel)
PlaceHolder1.Controls.Add(panel1);
//增加一个服务器控件Button
Button btn = new Button();
btn.Text = "Button1";
//添加按钮点击脚本
btn.Attributes.Add("onclick", "btnClick(this);");
PlaceHolder1.Controls.Add(btn);
}
/**//// <summary>
/// 注册脚本,(分别响应SELECT选中项改变和btton按钮点击事件)
/// </summary>
/// <param name="?"></param>
protected void RegisterScript()
...{
string myScript = "<script language=javascript>"
+ "function fnChange(oSelect)"
+ "{ "
+ " alert(oSelect.options[oSelect.selectedIndex].text);"
+"}"
+"function btnClick(btn)"
+ "{"
+ " alert(btn.value);"
+ "}"
+ "</script>";
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "myScript", myScript);
}
}
在页面上拖放一个PlaceHolder控件,添加以下代码可了解这种应用。
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
...{
protected void Page_Load(object sender, EventArgs e)
...{
//注册脚本
this.RegisterScript();
//
//动态加载控件
//
Panel panel1 = new Panel();
panel1.Width = new Unit("200px");
//增加一个html下拉框控件
string htmlString = " <SELECT ID="oCar" SIZE="1" onchange="fnChange(this)">"
+ " <OPTION VALUE="1">宝马"
+ "<OPTION VALUE="2">保时捷"
+ "<OPTION VALUE="3" SELECTED>奔驰"
+ "</SELECT>";
panel1.Controls.Add(new LiteralControl(htmlString));
//甚至还可以将panel放到PlaceHolder(通常情况下在页面上直接放置一个panel)
PlaceHolder1.Controls.Add(panel1);
//增加一个服务器控件Button
Button btn = new Button();
btn.Text = "Button1";
//添加按钮点击脚本
btn.Attributes.Add("onclick", "btnClick(this);");
PlaceHolder1.Controls.Add(btn);
}
/**//// <summary>
/// 注册脚本,(分别响应SELECT选中项改变和btton按钮点击事件)
/// </summary>
/// <param name="?"></param>
protected void RegisterScript()
...{
string myScript = "<script language=javascript>"
+ "function fnChange(oSelect)"
+ "{ "
+ " alert(oSelect.options[oSelect.selectedIndex].text);"
+"}"
+"function btnClick(btn)"
+ "{"
+ " alert(btn.value);"
+ "}"
+ "</script>";
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "myScript", myScript);
}
}
相关文章推荐
- ASP.net中动态加载控件时一些问题的总结[转]
- asp.net动态加载用户控件
- 总结Asp.net中Page加载PostData的具体过程 进而解决"获取动态创建的控件的PostData数据"问题
- 关于ASP.NET动态加载控件的几点实用总结
- asp.net 动态加载控件
- asp.net动态加载ascx用户控件
- [ASP.NET]asp.net动态加载用户控件
- 在ASP.NET中动态加载内容(用户控件和模板)
- ASP.NET动态加载用户控件的页面生成过程
- ASP.net中的AJAX学习记录五:动态加载用户控件(Calendar控件为例)
- ASP.NET中动态加载用户控件并传值
- 在ASP.NET中动态加载内容(用户控件和模板)
- ASP.Net 动态加载控件 未能加载视图状态 的解决
- ASP.NET动态加载用户控件的页面生成过程
- ASP.NET动态加载用户控件的实现方法
- ASP.net 动态加载控件时一些问题的总结
- Asp.net开发心得点滴[动态加载的用户控件使用事件委托,交给页面处理的事件无效问题]
- asp.net 动态加载用户控件注意
- ASP.NET动态加载用户控件的页面生成过程
- 【转载】asp.net动态加载ascx用户控件