为Sharepoint创建Web部件时,创建实际的Web部件或使用和ASP.NET用户控件(.ascx)一样好吗?
我已经知道如何创建我需要的用户控件,因此创建Web部件的额外工作似乎只是不必要的腿部工作.
使用Web部件而不仅仅是创建和ASP.NET用户控件有什么好处?
除了最简单的Web部件之外,我是用户控件的忠实粉丝.我创建了一个实例化并加载用户控件的webpart.还有其他工具可以用来暴露你的用户控件,比如smartpart,但我建议你自己把它包起来,因为它是一个很好的学习经验.完成一次后,您基本上可以为要创建的任何其他Web部件创建模板.
祝好运!
必须将一个简单的ASP.NET ascx控件添加到自定义布局页面.这限制了控件的实用性,因为它无法"随处"添加.
拥有webpart可以灵活地将控件在不同位置多次添加到站点,甚至可以在具有不同属性的同一页面上多次添加.
正如已经提到的那样,使用CreateChildControls()
在webpart中创建控件是很好的,将webpart编码和打包成解决方案并不是什么大不了的事情,这使得它值得付出额外的努力.
Webparts还能够接受来自同一页面上"过滤器"webparts的连接,与在网站上托管ascx控件相比,为webpart提供了额外的灵活性.
对于使用该网站的编辑来说,与编辑页面布局,发布它然后根据该页面布局创建页面相比,它们能够添加webpart会有很大的不同,所以从站点的角度来看编辑器,可用性的差异真的很大.
我建议更进一步,编写webpart以使用xslt文件来显示内容,并使xslt的位置成为webpart的可配置属性.这确实增加了控件的灵活性.
查看Dataview webpart,了解添加自定义渲染可以完成多少工作.