开发自定义控件 (asp.net C#)
学习自定义控件的开发不仅可以使你开发出更灵活的系统更重要的是它可以使你加深对已有服务器控件的理解,得以更灵活的应用。
较之于asp,asp.net提供了更强大的功能,我比较喜欢它的代码分离技术和对诸如C#、VB.Net等强类型语言的使用,这是从开发者的角度来看
的,从用户的角度来看,会觉得它速度更快,运行更稳定,安全性也更高。不管怎么说,新技术的产生总会使许多人感到高兴,不过对开发者来说,坏消息是他们需
要学习更多新的知识。
Asp.net有了很多的改变,比如你可能会发现供我们操作的元素也和以前有了很大的不同,原来标准的HTML元素变成了现在的服务器控件,所谓服务器控
件,就是在服务器上运行,并可以映射到所有浏览器支持的标准 HTML 标记的控件,在你的web窗体中,凡是包含 runat="server"
属性声明的元素都叫做服务器控件(在VS.Net中的设计页面中,用一个小小的绿色箭头表示),你可以用原有的HTML元素并加上
runat=”server”属性使其变为一个服务器控件,这叫做HtmlControls,它可以直接映射到标准HTML标记;也可以使用.Net提供
的全新的WebControls,它比前者更抽象,功能也更加强大。不管采用哪一类控件,runat=”server”属性都将会使你可以以编程方式访问
这些元素。
这很容易理解,服务器控件就是在服务器端运行的控件,经过服务器端某些程序的解析再生成标准的HTML代码显示在我们的浏览器上,事实上,Web
Form之所以可以提供最大可能的浏览器兼容性也是基于此理。与通常的理解稍稍有些不同,在asp.net中,一个页面(Page),一个验证控件,一个
用户控件(User
Control),都可以看作是一个独立的控件,它来自于其它控件的组合。除了使用.Net提供的一系列控件外,你还可以到网上找一些免费的控件,
[url]www.asp.net[/url]中的Control Gallery一栏就收集了很多常用的Control。
在asp.net中,(传统意义上)可供你开发的控件实际上有两种:Custom Control 和 User Control。Custom
Control 是纵向的,是对系统本身控件的继承和扩充,在程序中以DLL文件形式存在,User Control
则是横向的,是对系统本身控件的组合,在系统中以.ascx为后缀名。这两种控件功能相同,都可以为开发人员提供可复用的可视化UI组件,相比之下前者具
有更大的灵活性,同时开发起来比较复杂,而后者容易开发,但可重用性就比较差。一般来说用户会先用User
Control来开发,只有当其不堪重用的时候才转
相关文档:
概念:其实思路非常简单,就像画画一样,你脑中的饼图想啥样子的,就把它在网页里画出来而已。相信大家小时候都画过画,不同的是,小时候,在纸上画,现在在网页上画。
这是我脑子里饼图的样子:<激光传真机>
C#后台示例代码:<激光一体机>
using System;
using System.Data;
using System.Configur ......
Process p = new Process();
p.StartInfo.FileName = "cmd.exe"; //設定程序名
p.StartInfo.Arguments = "/c " command; //設定程式執行參數
p.StartInfo.UseShellExecute = false; //關閉Shell的使用
p.StartInfo.RedirectStandardInput = true; //重定向標準 ......
原文地址:http://www.codeproject.com/KB/aspnet/AspDotNetCache.aspx
介绍
缓存是在内存存储数据的一项技术,也是ASP.NET中提供的重要特性之一。例如你可以在复杂查询的时候缓存数据,这样后来的请求就不需要从数据库中取数据,而是直接从缓存中获取。通过使用缓存可以提高应用程序的性能。
主要有两种类型的缓存:
1 ......
此处提供的代码用来实现当asp.net页面中的某个Button被点击后disable掉该页面中所有的Button,从而防止提交延时导致的多次提交。基于之前的onceclickbutton脚本.
//ASP.NET中防止页面多次提交的代码:javascript< script language="javascript"> < !-- function disableOtherSubmit() {
var obj = event.srcEl ......
C#(C sharp)字符串和时间的相互转换。
一、DateTime –> string
时间类型转化成字符串类型,那是相当的简单,直接调用ToString()方法即可。如:
DateTime dt = DateTime.Now;
string dtStr = dt.ToString();
如果想对输出格式化,可以这么写:
dt.ToString("yyyy年MM月dd日"); ......