webpart

关于webpart 自己遇到的 很多的 问题 最近想写一篇文章来 对于webpart 我自己的认识进行一个总结

 

 

首先webpart 是由很多歌控件进行组合的

1.WebPartManager 这个控件是 webpart应用必不可少的一个控件 主要是为了对页面上的webpart进行管理 比如 添加 删除 拖动 等等 一个页面中只能有一个WebPartManager 不需要 对它进行特殊的设置 通过它 还可以对于WebPart的模式进行更改 相应的模式都会对应着相应的控件来进行使用

WebPartManager1.DisplayMode = WebPartManager.BrowseDisplayMode;

模式分为四种

BrowseDisplayMode//只能进行浏览

DesignDisplayMode//可以实现webpart的拖拽

CatalogDisplayMode//目录模式 对关闭的webpart机型管理

EditDisplayMode//编辑模式 可以对webpart进行 编辑

2.webpartzone 这个控件 我的理解就类似一个容器 将web服务器控件放在里面 自动的就会机型封装 让服务器控件具有webpart控件的一些属性 这个控件也是 必不可少的 它在页面中夜不会显示 只是指定了一个区域

3.CatalogZone 用来放Catalog控件的 关于Catalog的控件必须放在里面在CatalogDisplayMode 模式下的时候才会显示

PageCatalogPart:页面目录 对于在页面上添加的控件 有的时候我们会给关闭 但是再想找回来就找不到了 这里就得用到这个控件 可以进行添加回来

DeclarativeCatalogPart:声明性目录 可以编辑模板 选择设计好自己需要的样式 到时候需要的时候就可以添加

ImportCatalogPart:导入目录 顾名思义 在外部写好的webpart可以通过这个控件进行导进来

4.EditorZone 编辑区域 相对的是放关于编辑的控件 这个也是在EditDisplayMode模式下才会显示

LayoutEditorPart:可以更改对应的webpart在webpartzone里面的 一些属性

AppearanceEditorPart:对wabpart的外观 大小 之类的进行编辑

5.connectionzone:是关于webpart之间进行数据交互 通信用的

 

对于一些人 会发现 在webpart项目在本地进行调试的时候都正常 可是 一旦发布到了服务器上之后 更改模式的时候就会报错 这个是 因为 webaprt 是由三种认证模式 一种默认的是 再本地运行的 还有两种是 在服务器端的 这个设计到用户的权限 我们应该在web.config文件下面进行一下设置 添加一段代码

<authorization>
<allow verbs="enterSharedScope" users="*" roles="admin"/>
<deny users="?"/>
</authorization>

这个就是让所有登录进来的用户都有修改的权限

 

==================================================================================================

还有的一个是 对用在webpart中 动态添加进来的控件 怎么对她进行 赋值

WebUserControl1 wuc = (WebUserControl1)LoadControl("WebUserControl1.ascx");
wuc.ID="a";
WebPart wb=WebPartManager1.CreateWebPart(wuc);
WebPartManager1.AddWebPart(wb,WebPartZone1,0);

//先将控件添加到指定的webpartzone区域

WebPartZone1.WebParts[0].Controls[0].FindControl("xxxx")//通过这种方式来通过索引来找到我们添加的控件 再进行一下类型的转换 这样 就可以直接访问的他的属性和方法了

 

==================================================================================================

webpart添加到页面上的 控件 我 给关闭的时候 页面的代码中就不会有这个代码了 可是 还可以用PageCatalogPart控件给找回来 所以 这个东西 其实并没用关闭 只是他给放到哪个位置进行记录了 初步怀疑 在项目的App_Data文件夹下会生成一个数据库 这个 应该就是存他的一些记录 和配置的地方

posted @ 2010-07-29 15:12  小火龙果  阅读(570)  评论(0编辑  收藏  举报