如何编写自定义的Web控件

建一个自定义的Web控件MyContro的步骤:
1)引用
using System;
using System.IO;
using System.Drawing;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;

2)保证MyContro是从WebControl继承的。
public class MyControl:WebControl

3)重写下面两个函数,这是必须的
protected override void Render(HtmlTextWriter writer)
{
this.CreateChildControls();
base.Render (writer);
}
protected override void CreateChildControls()
{
// 清除现有的子控件及其 ViewState
this.Controls.Clear();
this.ClearChildViewState();
// 生成控件树
// 生成环境表格(一行,两个单元格)
Table myTable = new Table();
//build the table row生成表格中的行
TableRow row = new TableRow();
myTable.Rows.Add(row);
// 生成单元格
TableCell myCell = new TableCell();
//用来生成链接按钮导航条的代码。每个按钮都显示有一个 Webdings 字符,可以根据需//禁用,并被绑定到内部的 Click 事件处理程序。

LinkButton myLinkButton = new LinkButton();
myLinkButton.ID = "MyLinkButton";
myLinkButton.Click += new EventHandler(myLinkButton_Click);

myLinkButton.Font.Name = "宋体";
myLinkButton.ToolTip = "好玄啊!";
myLinkButton.Text = "请点我";
myCell.Controls.Add(myLinkButton);
row.Cells.Add(myCell);
Controls.Add(t);
}

4)自定义的事件的方法
private void myLinkButton_Click(object sender,System.EventArgs e)
{
Page.Response.Write("想干点什么就写点什么吧,就这么简单!");

}

5)编译一下,然后点工具—》添加/移除工具箱项
浏览到你编译生成的dll

6)使用

 

/Files/hayden/自定义控件示例.rar

转载于:https://www.cnblogs.com/hayden/archive/2009/12/23/1630996.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/569041.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解决[ERROR] [MY-013276] [Server] Failed to set datadir to ‘F:\Mysql\mysql-8.0.19-winx64\data\‘ (OS er

解决[ERROR] [MY-013276] [Server] Failed to set datadir to ‘F:\Mysql\mysql-8.0.19-winx64\data’ (OS errno: 2 - No such file or directory)报错问题 输入:mysqld --initialize --usermysql --console 如下图: 然后输入mysqld -install&#xff…

DataTable操作相关实例

代码 publicDataSet GetChildDepartmentsByUserId(Guid userId) { DataSet ds newDataSet(); try{ OrgChartDB.OrgChart_PermissionDataTable pdt permissionTableAdapter.GetDataByUserId(userId); for(inti 0; …

修改mysql密码时遇见ERROR 1064 (42000) You have an error in your SQL syntax; check the manual that correspo

修改mysql密码时遇见ERROR 1064 (42000) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘password(‘123456’)’ at line 1报错 如下图: 这个句子翻译过来的意思是…

JavaScript基础内容

1.1 JavaScript基础概念: JavaScript (ECMAScript) :JavaScript 是脚本语言。JavaScript和ECMAScript通常被人用来表达相同的含义,但是JavaScript并不是这么一点含义,它是由ECMAScript 核心. DOM 文档对象模型. BOM 浏览器对象模型…

如何利用navicat可视化软件添加与新建mysql数据库

新建 https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 打开navicat,如下图: 点击连接 名称可以…

mysql -- 死锁

死锁(Deadlock) 什么是死锁 所谓死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁&#xf…

在windows下的cmd中如何进入与退出mysql

在windows下的cmd中如何进入与退出mysql https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 进入:…

在shell中全局变量与局部变量的区别及其举例

主要区别: 1.作用域不同:全局变量的作用域为整个程序,它的声明在后面的各个部分都可以发生作用,而局部变量仅仅为定义的某个函数。且局部变量只能在局部进行使用。 2.优先级不同:局部变量优先于全局变量。 3.生命周期…

Ext4文件系统修复

Ext4文件系统修复 目录 一、 super block................................................................................................................................................. 二、查看分区设备信息....................................................…

黑盒测试概念简述,黑盒测试优缺点、黑盒用例设计方法简单介绍及黑盒测试方法使用总结

黑色测试黑盒测试概念:黑盒的优缺点介绍:黑盒测试用例设计方法简单介绍:黑盒测试方法使用总结:黑盒测试概念: 又称功能测试或数据驱动测试,是用来检测每个功能是否正常使用。黑盒测试主要意味着测试要在软…

超文本css样式换行

之前有关于LODOP中纯文本换行的相关博文:Lodop纯文本英文-等符号自动换行问题纯文本的遇到不拆分的单词的时候,可以通过LODOP 语句设置允许标点溢出,且英文单词拆开。超文本需要通过css样式控制,相关博文:Lodop打印控件…

详述白盒测试逻辑覆盖法的语句覆盖及其缺点

语句覆盖的定义: 语句覆盖就是设计若干个测试用例,使被测试程序中的每条可执行语句至少执行一次。比如说我们测试用例里面有10个语句,那么这10个语句都要被测试到。 https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注!…

HDU - 6183 Color it 2017广西邀请赛(线段树)

题目链接 题意: 有四种操作 0操作 清空所有点 1操作 在(x,y)处插入一个带颜色的点 2 操作统计(1~x)(y1~y2)这个范围的不同的颜色数 3 结束 思路: 颜色数只有51个 我们可以建51颗线段树 因为每次查询都是1~x范围的 所以…

详述白盒测试的逻辑覆盖法的判定覆盖及其优缺点

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 如有转载,请注明出处(如不注明,盗者必究) 详述白盒测试的逻辑覆盖法的判定覆盖及其优缺点&#xff1…

【SDOI 2014】数表

题意 https://www.luogu.org/problem/P3312 题解 显然就是求 $\sum_{i1}^{n} \sum_{j1}^{m} \sigma_1(\gcd{(i,j)})\times [gcd(i,j)\le a]$($\sigma_1(x)$ 表示求 $x$ 的所有约数之和),看到 $gcd$ 就知道是莫比乌斯反演基础题吧 如果不考虑 …

详述白盒测试的逻辑覆盖的条件覆盖及其优缺点

条件覆盖详述白盒测试的逻辑覆盖的条件覆盖及其优缺点:条件覆盖的定义:与判定覆盖的区别:条件覆盖率:测试实例:代码:优缺点:详述白盒测试的逻辑覆盖的条件覆盖及其优缺点: https://b…

react判断点击位置是否为组件内,实现点击外部触发组件内事件

1.导入 import {findDOMNode} from react-dom2.绑定ref<div ref"refTest" </div> 3.绑定监听事件//监听外部clickcomponentDidMount() {document.addEventListener(mousedown, (e)>this.handleClickOutside(e), false);}componentWillUnmount() {docume…

详述白盒测试的逻辑覆盖法的条件判定覆盖及其优缺点

条件判定覆盖的定义&#xff1a; 设计足够多的测试用例&#xff0c;使被测程序中每个判定的每个条件的所有可能取值&#xff08;真假&#xff09;至少执行一次&#xff0c;并且每个判定的所有可能&#xff08;真假&#xff09;分支也至少执行一次 。通俗来讲&#xff0c;就是条…

Cisco 4507R+E四引擎VSS故障解决

如果可以要做双引擎VSS(每个机箱1个引擎), 3.6.7版本可以实现 如果需要做4引擎VSS(每个机箱2个引擎) 请使用3.8.x和之后的版本. 转载于:https://www.cnblogs.com/networking/p/8678009.html

利用可视化软件navicat对mysql进行语句查询的使用(增删改查)

https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注&#xff01; 欢迎关注微信公众号&#xff1a;宝藏女孩的成长日记 如有转载&#xff0c;请注明出处&#xff08;如不注明&#xff0c;盗者必究&#xff09; 增&#xff1a;insert 语法&#xff1a;INSERT [INTO] 表…