代码改变世界

实现WebPart编辑功能

2007-09-19 14:44  Jacky_Xu  阅读(281)  评论(0编辑  收藏  举报
实现WebPart的编辑功能需要用到VS2005提供的EditorZone控件和EditorPart系列控件。EditorPart系列控件包括AppearanceEditorPart、BehaviorEditorPart、LayoutEditorPart、PropertyGridEditPart。
    要实现WebPart的编辑功能需要几个条件:(1)用户处于共享页面范围(2)显示模式为编辑模式。
    对于(1)来说,只要在Web.config文件中配置一下就OK了。 
    <allow users="Tom" verbs="enterSharedScope"/>  表示用户名"Tom" 被授权共享页面范围,否则切换成编辑模式会报错。

Web.config

    对于(2),在页面中添加2个LinkButton,在cs文件中切换一下显示模式,也可以用DropDownList来实现。
    EditorPart系列控件中的BehaviorEditorPart、PropertyGridEditPart需要特别说明一下。
    BehaviorEditorPart控件看名字也知道大概能做什么了,它在默认情况下可能不会显示出来,实现这个控件需要2个步骤:一、配置Web.config文件,方法上面已经说了,二、以编程的方式将页从用户级别改为共享级别,可以通过使用ToggleScope方法实现。
    PropertyGridEditPart:是对自定义属性的修改。

    在EditorPart中实现折叠的功能
    利用Css和JavaScript脚本来实现。初始情况下,让LEGEND的显示“+”号,并隐藏区块中的内容,通过Click“+”号改变Css。

    示例代码如下:
Default.aspx

Default.aspx.cs

StyleSheet.css

    效果图:

有2个问题:(1)点编辑模式需要点2次才有反映(2)IE老是莫名其妙的发生错误,让你发送错误报告。