源码信息

最新源码评论

  • 评论者:51aspx
    51aspx(编辑) 发表于:2008-07-11 13:47:00

    1.控件开发背景<br/>&nbsp;&nbsp; 我们在做项目的时候经常会遇到要做后台管理界面,一般都是用Fram框架来实现,框架的左面是一个导航栏,关键就是这个导航栏,是用TreeView控件,还是自己写JS脚本,用TreeView吧影响美观,写JS吧,太多了,麻烦。为了不用TreeView又省去写JS的麻烦,所以就有了<br/>把以前写好的JS脚本封装成Asp.Net 服务器控件的想法。<br/>2.实现效果<br/>&nbsp;&nbsp;<img src="http://bbs.51aspx.com/upload/auto/2_080711014641629.JPG" width="174" height="193" border="0" onload="thumbImg(this)" />&nbsp;&nbsp; <br/>3.&nbsp;&nbsp;属性<br/> <img src="http://bbs.51aspx.com/upload/auto/2_080711014642379.JPG" width="643" height="173" border="0" onload="thumbImg(this)" />&nbsp;&nbsp;&nbsp;&nbsp; <br/>CssFilePath :是如果用户不喜欢内置的CSS样式,可以选择自己喜欢的CSS样式来满足自己的需求。<br/>ListItems&nbsp;&nbsp;&nbsp;&nbsp;:是一个集合属性,其内部也包含一个集合属性。<br/>4.设计时支持<br/><img src="http://bbs.51aspx.com/upload/auto/2_080711014642676.JPG" width="481" height="108" border="0" onload="thumbImg(this)" /><br/>增加设计时支持 , 主要是重写下面的方法:<br/><font style="font-size: 13px"><font color="#0000ff">public</font><br/><font color="#0000ff">override</font><font color="#000000"> DesignerActionItemCollection GetSortedActionItems()<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DesignerActionItemCollection list </font><font color="#000000">=</font><br/><font color="#0000ff">new</font><font color="#000000"> DesignerActionItemCollection();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list.Add(</font><font color="#0000ff">new</font><font color="#000000"> DesignerActionTextItem(</font><font color="#800000">&quot;</font><font color="#800000">查看选择面板</font><font color="#800000">&quot;</font><font color="#000000">, </font><font color="#800000">&quot;</font><font color="#800000">ShowPanel</font><font color="#800000">&quot;</font><font color="#000000">));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list.Add(</font><font color="#0000ff">new</font><font color="#000000"> DesignerActionPropertyItem(</font><font color="#800000">&quot;</font><font color="#800000">CssFilePath</font><font color="#800000">&quot;</font><font color="#000000">, </font><font color="#800000">&quot;</font><font color="#800000">Css文件路径:</font><font color="#800000">&quot;</font><font color="#000000">, </font><font color="#800000">&quot;</font><font color="#800000">NavMenu</font><font color="#800000">&quot;</font><font color="#000000">));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;list.Add(</font><font color="#0000ff">new</font><font color="#000000"> DesignerActionPropertyItem(</font><font color="#800000">&quot;</font><font color="#800000">ListItems</font><font color="#800000">&quot;</font><font color="#000000">, </font><font color="#800000">&quot;</font><font color="#800000">ListItems:</font><font color="#800000">&quot;</font><font color="#000000">, </font><font color="#800000">&quot;</font><font color="#800000">NavMenu</font><font color="#800000">&quot;</font><font color="#000000">));<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000ff">return</font><font color="#000000"> list;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</font></font><br/>ListItems在设计时的界面同属性一样,如下图:<br/><img src="http://bbs.51aspx.com/upload/auto/2_080711014642973.JPG" width="506" height="450" border="0" onload="thumbImg(this)" /><br/>5.项目工程结构如下<br/><img src="http://bbs.51aspx.com/upload/auto/2_080711014643488.JPG" width="233" height="399" border="0" onload="thumbImg(this)" /><br/>6.小结<br/>本控件主要有几个重点。<br/>&nbsp;&nbsp; (a).TypeConverter的实现。<br/>&nbsp;&nbsp;&nbsp;&nbsp;(b).<font face="Verdana">Editor</font>的实现。<br/>&nbsp;&nbsp;&nbsp;&nbsp;(c).<font face="Verdana">NavMenuDesigner的实现.<br/></font>

    8 个回复
    • 回复者:chear
      chear(用户)回复于:2008-07-16 15:26:00

      真的很不错!!

    • 回复者:mypost
      mypost(用户)回复于:2008-07-22 18:47:00

      能不能动态添加项?

    • 回复者:wm117
      wm117(用户)回复于:2008-08-24 18:46:00

      :D :D :D 那里下载

    • 回复者:yoving
      yoving(用户)回复于:2008-07-15 11:11:00

      怎么不能下载???

    • 回复者:duxianwei
      duxianwei(用户)回复于:2011-09-07 15:45:00

      这个NavMenu控件如何从数据库读出数据呢

    • 回复者:taigum
      taigum(用户)回复于:2009-03-28 08:16:00

      多谢分享

    • 回复者:wangzi521
      wangzi521(用户)回复于:2011-01-11 13:07:00

      怎么动态添加呢?

    • 回复者:小葫芦仙
      小葫芦仙(用户)回复于:2011-03-22 14:09:00

      是啊,怎么样动态加载呢?