使用DNNTree控件制作DNN模块

为了学习DNN,我最近一直在看DNN团队的相关博客和个人网站,我有很多问题,也是通过在DNN官方站的论坛上得到答案的,当然,有很多让asp.net和DNN方面的资深人士不屑的初级得不能再初级的,问题。不过,还是感谢他们能回答,至少是提示,也非常感谢这些愿意将自己的知识分享给新人的IT人。在此,我也将我的一些学习过程写出来,希望对更新的新人能有一点帮助。我始终相信作IT的,特别是编程这块,需要大家(不论国外,国内)将自己的知识分享出来,进步才够快。

好的,废话不说了。
这是Michael的教程,可以说是step by step的。如果还不会DNN module开发的朋友,请先看这篇文章,也是很初级的,同样step by step,相信自己是最棒的。
http://www.codeproject.com/KB/applications/LCTDNNModDev.aspx

http://www.adefwebserver.com/DotNetNukeHELP/DNNTree/
我照着作下来,有这几点需要注意的,我用的是C#。

遇到的问题是:objNode.ImageIndex = eImageType.Folder
vs2005对此没有提示,说明并没有在上下文定义,或者引用相关的类或者名称空间。首先,我是在vs2005里用calss view和object view查找,没有! 接着在DNN Q群里问高手,结果得到提示,在filemanager.ascx.vb中找到了enum的定义,不过,还是引用不了。再后来google一通,还是未果。于是,我还向Michael去了mail,并在论坛上发了贴。结果,他们都给了我认真的回复,而当我作完这个练习后,我发现,在这段代码最后,有对eImageType.Folder
的定义。
Public Enum eImageType
Folder
Page
End Enum
 

很是惭愧!

建议遇到问题,按上述流程未解决的,请在相关的专业论坛发贴,实在不行,再向作者去mail。因为就在昨晚我看Michael的其他教程时,看到醒目的提示,请勿来mail,有问题到论坛。的确理解,他的教程读者比牛毛还多,都去mail,还不累死,哪儿还有精力来写更多的教程呢。如果遇到我这样的问题,还不给郁闷死。

第2个问题,就是编译时,提示error,意料之中,从VB到C#,一般都有这样的问题。
 在这儿推荐一个好站,http://labs.developerfusion.co.uk/convert/vb-to-csharp.aspx
它可以将vb c#互转代码。
当然,我是手工转的,因为代码量较少,没必要用工具,就当对自己的提高吧。

objTreeNode = objParent.TreeNodes(index)

这个index外面的圆括号,应该换成[],知道吧。不知道原因的,请在评论里回复。

另外,
Dim objTreeNode As TreeNode

转成C#
TreeNode objTreeNode;
后,可能会出错,如果你在using名称空间时,同时引用了using System.Web.UI.WebControls;
using DotNetNuke.UI.WebControls;的话。

因为在这里,我们用的TreeNode是DotNetNuke.UI.WebControls;的,而非System.

所以,要么请您明确写明,写全,要么,将using System.Web.UI.WebControls;的WebControls去掉,因为这项目里正好用不着System的WebControls.今后如果遇到同一项目里需要用到这两个WebControls的话,请用前者,写全,写明。

第3个问题:

编译通过了,在IE里,除了图标显示为红叉外,其他都能正常使用,达到预期效果。
我看了图标的Property,显示的是http://localhost/images/folder.gif 而在我的系统里正确的应该在images前面加上dnn/
在vs2005中,查看DNNTree控件的属性,看到systemimagespath居然自作聪明的给我加上了images,请将其改为dnn(如果你也用的是DNN作为虚拟目录名)。

相应的
代码文件里也不需要像Michael那样加上"http://www.cnblogs.com/../"
而是
DNNTree1.ImageList.Add("images/folder.gif");
DNNTree1.ImageList.Add("images/file.gif");

一切OK,如果您还遇到什么新的问题,欢迎您在评论(http://blog.csdn.net/metababy)里,提出,这样,今后其他人搜到这文章,就不会出现同样的疑惑了。

posted on 2008-07-15 13:30  公众号73只蚂蚁  阅读(404)  评论(0编辑  收藏  举报

导航