Clingingboy

<clingingboy:control runat="server"  />
Get Ready For SilverLight

博客园 首页 新随笔 联系 订阅 管理
  135 Posts :: 0 Stories :: 1157 Comments :: 208 Trackbacks

置顶随笔 #

     摘要: asp.net控件开发基础系列,希望大家喜欢.  阅读全文
posted @ 2006-09-17 18:38 Clingingboy 阅读(24462) | 评论 (167)编辑

2008年5月16日 #


1.ComboBox

posted @ 2008-05-16 12:06 Clingingboy 阅读(15) | 评论 (0)编辑

2008年3月6日 #

      最近微软又推出了一大堆东西,包含我们感兴趣的I E 8 beta1和mvc preview2.
还有就是我们可选的Web Client Software Factory最近也推出了2.0版本.

asp.net mvc框架的出现让我们重新开始思考控件的使用.

我们来打个比方吧.如blog程序的应用

如果用了一个列表控件,使用数据绑定,其实你看到的代码还是比较丑的,设计人员还是看不懂,而且数据绑定添加了其中业务逻辑判断的难度,我们无法在模板中读取绑定的值来进行判断,但可以在ItemDataBound事件中处理.这就不方便了,我们换了一个模板可能显示的方式就不一样了.不通用
或者你可对此列表显示再进行封装成控件,但这便成了封装,没了灵活性,便成了控件.

控件有以下特点(指服务器端控件)

1.使用简单
2.功能强大
3.功能固定
4.性能会比直接用html差些(因为跟服务器端打交道多些,说白了服务器压力加大)
5.特定控件比较适用于特定场所。这叫定制控件,到了其他地方不欢迎。
6.功能过于强大,使用不当,加大服务器压力,就如视图状态吧。还有一些商业化的控件吧。

下面说说我的想法,乱撤一些.

就说asp.net ajax updatepanel吧,使用简单吧。用起来那个叫简单。简单的功能,它可以办到,但它也有个缺点,局部刷新只刷那updatepanel里面的,而且问题复杂了,它有些事情你解决不了的,到时候你得看asp.net ajax客户端的脚本。那脚本学的快,熟悉一下也得时间吧。当你熟悉的时候,感觉这框架真是那么回事,好用,后来你发现了AjaxControlToolkit.asp.net ajax如虎添翼呀,
大家纷纷尝试,效果库,使用简单,功能还算过的去,数量也算足。到这里你开始想这东西用起来了。
接着接着,你开始使用了,asp.net ajax客户端脚本的写法确实挺规范的,代码写的也漂亮,但你有时发现AjaxControlToolkit的几个控件你没几个用的上的,而且用上了,控件的功能还不够,怎么加,你加?继承?你得先看懂那代码?那代码量也不算少,就说这个autotemplate吧,运行这个控件,则需要加载其他控件,而且还用到了其AjaxControlToolkit自定义的函数。你想看懂还不如直接入AjaxControlToolkit的团队。。。
其实asp.net ajax(其实这东西因为跟updatepanel结合的紧才会红起来,不然没多少人选它)做的,个人感觉挺好的,也由于我们个人使用不当,asp.net ajax功能没及时更上,一个updatepanel并不能解决所有问题,用asp.net ajax框架的人远没有用propotype和jquery等的多。这时jquery的插件多的让你眼红,你准备换框架了,放弃asp.net ajax.

偶尔我们会有种回归html,放弃控件的冲动,上面我讲的可能很多人会遇到。
有一点是很重要的,框架需要有大家去支持才会红 个人感觉asp.net ajax已经开始输了,看微软接下来怎么走。这东西只能刚开始忽悠忽悠大家。大家也了解国内网络的状态,我们必须了解框架才能使用框架,尽量加载少的文件.控件的封装就存在这个问题。所以建议大家了解后才使用,我们需要测试。商业控件也一样,功能太多你用不了那这个控件就不适合你。不然以后你偷懒,你的页面就会控件叠控件,你的页面就是这么变慢的。

总结一句:特定场所用特定控件。

上面的话就说明了控件的用武之地了 。
有时间接着写

posted @ 2008-03-06 20:01 Clingingboy 阅读(277) | 评论 (6)编辑

2008年2月14日 #

     很少写这些,看了1.2.3版本的改进,确实佩服,很方便.

1.绑定事件
(1)
$("p").bind("click", function(e){});

(2)
$("p").click(function() {})

2.删除事件

(1)删除特定事件
$("div").unbind("click");

(2)删除所有事件
$("div").unbind();

3.触发事件

(1)trigger方法 触发特定元素事件
$("div").trigger('click');
(2)triggerHandler方法 与trigger方法相似,但不触发浏览器默认事件,如focus事件,使用此方法,将会阻止焦点到元素上
$("input").triggerHandler("focus");

4.特殊事件
(1)one(string event,function data)
此事件只执行一次则被删除
$("p").one("click", function(){
  alert(
"test");
}
);

(2)hover(over, out)
切换mouseover与mouseout事件

$("td").hover(
  function () 
{
    $(
this).addClass("hover");
  }
,
  function () 
{
    $(
this).removeClass("hover");
  }

);
可用unbind mouseover与mouseout方法来删除此事件
(3)toggle(oldclick,newclick)
切换执行click事件

    $("li").toggle(
      function () 
{
        $(
this).css("list-style-type""disc")
               .css(
"color""blue");
      }
,
      function () 
{
        $(
this).css({"list-style-type":"""color":""});
      }

    );

可用unbind click方法来删除此事件

5.     1.2.3版本新增功能
(1)事件命名空间(便于管理)

实际使用方面:
1.当不需要全部事件,删除特定2个以上的事件.

示例:
  $("div").bind("click.plugin",function() {} );
  $(
"div").bind("mouseover.plugin", function(){});
  $(
"div").bind("dblclick", function(){});
  $(
"button").click(function() {$("div").unbind(".plugin");  })

在事件名称后面加命名空间,在删除事件时,只需要指定命名空间即可.以上代码执行以后,dbclick仍然存在.

(2)相同事件名称,不同命名的事件执行方法

示例:
$("div").bind("click", function(){ alert("hello"); });
  $(
"div").bind("click.plugin", function(){ alert("goodbye"); });
  $(
"div").trigger("click!"); // alert("hello") only

以上trigger方法则根据事件名称来执行事件.

简单的写几句.以上的几个方法还是非常实用方便的
posted @ 2008-02-14 17:06 Clingingboy 阅读(515) | 评论 (0)编辑

2008年2月2日 #

     摘要: vs2008简体中文版发布  阅读全文
posted @ 2008-02-02 13:22 Clingingboy 阅读(15477) | 评论 (72)编辑

2008年1月31日 #

      很早就想放上来了,代码比较乱,可能有些别的东西,没整理过,希望对大家有帮助.
上船容量有限制,不得不删除一些dll,还请大家自己添加进来,不然可能运行有些错误.

/Files/Clingingboy/AspDemo1.rar
posted @ 2008-01-31 10:59 Clingingboy 阅读(344) | 评论 (0)编辑

2007年12月31日 #

   跟风一下,2007年算是我真正开始工作的一年.工作跟学生的感觉就是不一样.工作后写随笔比较少了.同时也在工作中认识了工作中的同事.工作的还算好.技术上可能没学生时代研究的如此透彻,时间不允许,但公司的学习氛围还不错.希望2008会更好.加油.祝大家元旦快乐.
posted @ 2007-12-31 22:37 Clingingboy 阅读(217) | 评论 (1)编辑

     摘要:     好久没写篇像样的随笔了,昨天晚上看了老赵的随笔,又由于这段时间这方面技术用的比较多,可能大家已经在用了.这里且与大家分享. 一.纯数据输出 1.早在看ActionScript的时候便接触到了这种写法,直到ajax很火的时候,才知道这种格式叫json. json数据格式是供前端javascript进行操作的暂时性的数据格式,由于javasc...  阅读全文
posted @ 2007-12-31 14:11 Clingingboy 阅读(1731) | 评论 (5)编辑

2007年12月29日 #

   
产生的ID和Name可以通过几个方法重载可以去除

1.使用HTML,这种方法很好,符合原来html的标签,如htmlLink,则不需要name属性,表单提交需要name属性

第一部重写Control类的ClientID属性.

此属性是只读的
        public override string ClientID
        
{
            
get
            
{
                
return this.ID;
            }

        }

这样的话,控件返回的ID就不会很复杂了.

2.表单

重写HtmlInputControl类的Name属性就可以通过了.

以上两点都可以通过System.Web.UI.Adapters.ControlAdapter来实现

3.Web服务器控件

其id和name输出是在AddAttributesToRender方法中,方法会在RenderBeginTag方法中调用.
假设我们要通过System.Web.UI.WebControls.Adapters.WebControlAdapter来实现的话,重写RenderBeginTag方法的话,无法得到控件的TagName,当然如果重新制作控件就可以把TagName属性暴露出来,这样便可以了

会导致RenderEndTag无法输出,难道重写RenderEndTag?,然后一个一个控件的类型判断.或者就真这么做,工作量会比较大些.无法取到TagName比较遗憾.

另外的方法就是重写AddAttributesToRender方法了.不过会牺牲一些功能.

还是推荐使用HTML控件配合System.Web.UI.Adapters.ControlAdapter的使用,就可以抛弃讨厌的嵌套代码了,大家可以配合MVC框架使用.
posted @ 2007-12-29 12:03 Clingingboy 阅读(699) | 评论 (2)编辑

2007年12月20日 #

  公司名称:德鸿科技
  网址:http://www.dtsc.com.tw

 工作地点:上海,南京

团队主要开发呼叫中心排班软件(b/s端),客户对象以银行及电信产业为主,具有良好的市场前景.
本团队开发人员BLOG bing:http://www.bingblog.net terry: http://www.cnblogs.com/Clingingboy

客户端网页开发人员
:

1.对网页前端技术有丰富的热忱,学习意愿高,能接受挑站复杂UI的设计
2.能熟练的使用CSS,HTML解决UI上的布局,遵循W3C所规范良好的编码规范
3.具丰富的DOM结构,JavaScript,AJAX知识

高级:
1.具有良好的用户使用界面设计思维,颜色的搭配
2.熟练使用Aptana进行开发
3.能解决网页在浏览上显示的差异
4.熟悉微软ASP.NET(C#)
5.具备面向对象的思维

工作内容:
负责前端的开发与设计

C#
开发人员:
1.对程序开发有很高的热忱,学习意愿高
2.具备面向对象的思维
3.能熟练使用Visual Studio 2005
4.熟悉.NET Framework类库

高级:
1.能使用设计模式进行开发
2.有对象分析及设计的能力
3.具良好的命名规范
4.具有使用Visual Soruce safe的经验

工作内容:
后端业务逻辑分析及对象设计

待遇:按照国家标准缴交津贴,薪资根据个人能力而定,待遇从优
请发简历到henry.jao@dtsc.com.tw

msn:jaohaohsuan@hotmail.com


我们要招的不是超人,是能做事情的人,所以不需要懂的非常全面,只要肯学能专注工作,一定能让你在行业里有所飞跃。
posted @ 2007-12-20 13:20 Clingingboy 阅读(867) | 评论 (13)编辑

2007年12月13日 #

最近写的比较多,出现了内存问题,把一些感觉不错的文章,收藏下,此篇用windows live writer发布

 

  1. 把应用程序从 Internet Explorer 迁移到 Mozilla
  2. Markup as a Craft(讲解写html标签的技术) (这里有中文)
  3. Understanding and Solving Internet Explorer Leak Patterns(很多实用的关于解决内存泄露问题的使用,开发者必看,大数据量下会用到的)
  4. 惰性函数定义模式
  5. Javascript Closures(中文)
  6. JavaScript的9个陷阱及评点(此blog文章不错)
  7. JavaScript中的作用域(e文)
  8. Using Closures To Support Object-Oriented AJAX
  9. javascript技巧大全(万一忘了怎么写了,或者怕大小写出错的,可以用来Ctrl +C then Ctrl +N)

 

 

推荐的网站

  1. http://www.ajaxrain.com/ 全是插件
  2. http://www.hotajax.cn/    也是插件
  3. http://thinkweb2.com/projects/prototype/ 讲解prototype框架的使用技巧,推荐看看
  4. http://scripteka.com/ prototype框架下插件,没jquery多,可能此框架看起来比较庞大。其源码可以作为学习对象
  5. http://ajaxian.com/ 一大把关于web开发的文章,强烈推荐

 

 

博客

http://hi.baidu.com/webworker

 

 

陆续添加了,好东西太多了,看不完,另外谁能帮我解决内存泄露的问题哈,看了这些文章还是没用

posted @ 2007-12-13 21:44 Clingingboy 阅读(500) | 评论 (0)编辑