Welcome 微信登录

首页 / 网页编程 / ASP.NET / ASP.NET自定义控件组件开发 第一章 第二篇 接着待续

ASP.NET自定义控件组件开发 第一章 第二篇 接着待续2011-10-04 博客园 小洋很感谢大家给我的第一篇ASP.NET控件开发的支持!在写这些之前,我也看了一些例子,想选中一些好 上手的例子,这样,可能一些例子大家以前都见过,但是我想说:同样是弹钢琴,同样一首“命运交响曲 ”,有的人弹的让人荡气回肠,有的人弹的就很一般。

受了李建忠老师的启发,发现用一种演化式的让人更好的接受。

好了,废话不说了。继续开发!希望大家支持!

我们之前开发了一个很简单的自定义的控件,方法很简单,只是把原来的html文本传入 writer.Writer()方法的参数,然后输出。其实从模式的角度看,这可说是个Template模式(只是提下而 已,有兴趣的朋友可以和我讨论)!

大家再来看看代码:

using System;using System.Collections.Generic;using System.Text;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;namespace CreditCardForm{public class CreditCardForm1:Control {protected override void Render(HtmlTextWriter writer){writer.Write ("<table style="width:287px;height:128px;border-width:0">");writer.Write ("<tr>");writer.Write ("<td>支付方式</td>");writer.Write ("<td>");writer.Write ("<select name="paymentMethod" id="paymentMethod" style="width:100%">");writer.Write ("<option value="0">Master</option>");writer.Write ("<option value="1">Visa</option>");writer.Write ("</select>");writer.Write ("</td>");writer.Write("</tr>");writer.Write("<tr>");writer.Write("<td>信用卡号</td>");writer.Write("<td><input type="text" name="CreditCardNo" id="CreditCardNo"/></td>");writer.Write("</tr>");writer.Write("<tr>");writer.Write("<td>持卡人</td>");writer.Write("<td><input type="text" name="CardholderName" id="CardholderName" /></td>");writer.Write("</tr>");writer.Write("<tr>");writer.Write("<td>过期时间</td>");writer.Write("<td>");writer.Write("<select name="Month" id="Month">");for (int month = 1; month < 13; month++){writer.Write("<option value=" + month.ToString() + ">" + month.ToString() + "</option>");}writer.Write("</select>");writer.Write("&nbsp");writer.Write("<select name="Year" id="Year">");for (int year = 2008; year< 2014; year ++){writer.Write("<option value=" + year.ToString() + ">" + year.ToString() + "</option>");}writer.Write("</select>");writer.Write("</td></tr>");writer.Write("<tr>");writer.Write("<td align="center" colspan="2">");writer.Write("<input type="submit" value="提交"/>");writer.Write("</td></tr>");}}}