当前位置: 首页 > 图文教程 > 网络编程 > ASP > 制作一个简单的服务器端控制

ASP
收集整理的ASP的常用内置函数
高手推荐的比较有用的ASP函数集合
ASP中JavaScript处理复杂表单的生成与验证
asp下tag的实现,简单介绍与部分代码
在ASP中用组件检测当前网卡地址的代码
asp中COM组件中如何连接数据库的代码
用ASP创建MDaemon用户的代码
ASP使用FSO读取模板的代码
ASP开发中可能遇到的错误信息中文说明大全(整理收集)
添加超级用户的.asp代码[蓝屏的原创,凯文改进,Ms未公布的漏洞]
全面优化ASP应用程序的性能的方法
实现ASP程序执行时间统计类的代码
ASP中利用execute实现动态包含文件的方法
asp中向文本框输出数据原样式的函数
ADODB.Stream组件Charset属性值集合
关于ASP代码的加密的几个方法
支持权重的无组件ASP广告显示代码
ASP下实现自动采集程序及入库的代码
asp读取远程文件并保存到本地代码
为什么ASP中执行动态SQL总报错误信息?提示语句语法错误

ASP 中的 制作一个简单的服务器端控制


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 247 ::
收藏到网摘: n/a

  2000082805.aspx
-------------------------------------------------------------
<%@ Register TagPrefix="CJ" Namespace="cjServerControls" %>
<html>
  <head>
  </head>
  <body>

    <form method="post" action="2000082605.aspx" runat="server">
<CJ:xmlDocReader  listText="au_id" listValue="au_id" runat="server"
path="C:\Inetpub\wwwroot\myASP\tutorials\authors.xml" />
    </form>

  </body>
</html>


2000082805a.cs
-------------------------------------------------------------
using System;
using System.Data;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace cjServerControls
{
public class xmlDocReader : Control, INamingContainer
{
string _xmlPath;
string _listID;
string _listValue;

public string Path
{
get { return _xmlPath; }
set { _xmlPath = value; }
}

public string listText
{
get { return _listID; }
set { _listID = value; }
}

public string listValue
{
get {return _listValue; }
set {_listValue = value; }
}

//Were are creating a member here so we can access it throughout the class
DropDownList _DDL;
DataGrid _DG;
FileStream fs;
StreamReader sr;
DataSet ds;
protected override void PreRender()
{
if (Page.IsPostBack) {
DataView dv = new DataView(ds.Tables[0]);
dv.RowFilter = listValue + "='" + _DDL.SelectedItem.Text + "'";
_DG = new DataGrid();
_DG.DataSource = dv;
_DG.DataBind();
Controls.Add(_DG);
}
}


protected override void CreateChildControls()
{
fs = new FileStream(Path, FileMode.Open, FileAccess.Read);
sr = new StreamReader(fs);
ds = new DataSet();
ds.ReadXml(sr);
fs.Close();

_DDL = new DropDownList();
_DDL.DataTextField = listText;
_DDL.DataValueField = listValue;
_DDL.AutoPostBack = true;
_DDL.DataSource = ds.Tables[0].DefaultView;
_DDL.DataBind();
Controls.Add(_DDL);


}
}
}

authors.xml
-------------------------------------------------------------
<root>
<schema id="DocumentElement" targetNamespace="" xmlns="http://www.w3.org/1999/XMLSchema"
xmlns:xdo="urn:schemas-microsoft-com:xml-xdo" xdo:DataSetName="DocumentElement">
    <element name="Table">
        <complexType content="elementOnly">
            <element name="au_id" type="string"></element>
            <element name="au_lname" type="string"></element>
            <element name="au_fname" type="string"></element>
            <element name="phone" type="string"></element>
            <elem