SharePoint学习札记[6] — WebPart之基础

Asp.net中的Web Part与MOSS中的Web Part有什么区别?WebPart怎么开发怎么部署?
 MOSS2007基础:Windows SharePoint Services 3.0中的Web Part [Sunmoonfire撰写]
 MOSS2007基础:开发自定义WebPart [Sunmoonfire撰写]
 MOSS2007基础:部署自定义WebPart [Sunmoonfire撰写]
《WalkThrough: SharePoint WebPart 入门指南一》[涂曙光撰写]
《WalkThrough: SharePoint WebPart 入门指南二》[涂曙光撰写]
《WalkThrough: SharePoint WebPart 入门指南三》[涂曙光撰写]
《WalkThrough: SharePoint WebPart 入门指南四》[涂曙光撰写]
《WalkThrough: SharePoint WebPart 入门指南五》[涂曙光撰写]

MOSS2007基础:Windows SharePoint Services 3.0中的Web Part
     开发人员扩展WSS 2.0站点的最常使用的方式就是开发自定义的Web部件。Web部件绝对是一个伟大的发明,因为她可以允许我们随意在页面里增加用户自定义的元素或实现个性化。因此,已经有很多MS或第三方公司开发的基于WSS 2.0的自定义Web部件。
      因为WSS 2.0中Web部件的成功,所以MS才决定在ASP.NET 2.0中增加对开发自定义Web部件的支持。这使得更多的开发人员可以在他们的ASP.NET应用中使用这一出色的特性,而且完全可以脱离WSS 2.0环境。
      因此,现在有两种不同的Web部件。老的WSS风格的WebPart依赖于Microsoft.SharePoint.dll,必须继承自WSS 2.0所定义的WebPart基类,其命名空间为Microsoft.SharePoint.WebPartPages。新的ASP风格WebPart依赖于System.Web.dll,必须继承自不同的一个由ASP.NET 2.0定义的WebPart基类,其命名空间为System.Web.UI.WebControls.WebParts。
    有一个大家听了绝对高兴的消息。在WSS 3.0中既可以使用老的WSS风格的WebPart,又可以使用新的ASP风格WebPart。这是通过将WSS 3.0支持的WebPart建立在顶层的ASP.NET WebPart结构基础上,重新编写Microsoft.SharePoint.dll而实现的。这样WSS 3.0运行时环境将兼容专为WSS 2.0编写的WebPart。
    为了向大家解释WebPart如何载入并在WSS 3.0中运行,下面将讨论一下WSS 3.0是如何被重新在ASP.NET  2.0的WebPart基础上设计构建的。我将深入WSS 3.0内部,看看它的Web部件页是如何组织的。接下来的日志中我们再研究在WSS 3.0中开发自定义WebPart的细节。(敬请关注)
    想要在一个ASP.NET 2.0的应用中使用WebPart,我们必须创建一个.aspx页面并包括一个WebPartManager控件和至少一个WebPartZone控件。WebPartManager控件负责将WebPart相关的数据序列化,进而实现存取。要知道,所有的这些数据都是要进入ASP.NET服务的数据库的。
    该.aspx页面作为一个Web部件页也可以包括Editor Parts,它将允许用户对WebPart进行定制和个性化WebPart属性。也可以包括一个Catalog Parts,它将允许用户添加新的WebPart到Web部件区域中。如果希望了解更多关于ASP.NET 2.0种内功个性化和自定义WebPart的内容,您可以参考msdn。(http://msdn.microsoft.com/msdnmag/issues/05/09/WebParts)
    在WSS 3.0中的WebPart是架构在一个名为SPWebPartManager的控件基础上的,它本身源于ASP.NET 2.0的WebPartManager控件。SPWebPartManager控件重写了WebPartManager控件的许多标准方法,使得WebPart数据存到WSS的内容数据库中,而不是ASP.NET的服务数据库中。当然,通常情况下我们并不需要关心这些。只要交给SPWebPartManager控件处理就可以了,而且这个并且这仅需的一个控件实例已经包括到母版页default.master中了,我们的创建的内容页面都已继承了该母版。
    其他几个典型的WSS 3.0Web部件页中的控件包括WebPart zones,Editor Parts和Catalog Parts。需要注意的是,在WSS 3.0Web部件页中使用的WebPart zones必须用由Microsoft.SharePoint.WebPartPages命名空间定义的WebPartZone控件来创建,而不是标准的ASP.NET 2.0中的WebPartZone控件。
    WebPartZone控件的实例通常在内容页面中来定义。下面的示例代码显示了如何创建一个内容页面,并设计其成为一个WSS 3.0站点中的Web部件页。可以看到,该.aspx页面链接到default.master,同时它继承自WebPartPage基类,在占位符PlaceHolderMain中包括了两个WebPartZone控件。

<%@ Assembly Name="[Microsoft.SharePoint.dll的完全限定名称]" %>

<% Page language="c#" MasterPageFile="~masterurl/default.master" Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage" %>
<%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="[Microsoft.SharePoint.dll的完全限定名称]" %>
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
<h3>我的自定义Web部件页</h3>
<table border="0" cellpadding="3" cellspacing="0">
<tr>
<td valign="top">
<WebPartPages:WebPartZone runat="server" ID="Left" Title="左侧区域" />
</td>
<td valign="top">
<WebPartPages:WebPartZone runat="server" ID="Right" Title="右侧区域" />
</td>
</tr>
</table>
</asp:Content>
当我们创建一个标准的ASP.NET 2.0应用程序中的Web部件页时,我们必须添加与WebPartManager控件交互的逻辑,用来管理WebPart显示的模式。通常情况下,我们还需要明确添加Editor Parts和Catalog Parts到页面的HTML布局中并做相应的调整。但如果在WSS 3.0站点的内容页面里,我们就不必做这些事情了。我们只要从Microsoft.SharePoint.WebPartPages命名空间中继承WebPartPage类,所以这些事都交给它在后台完成就好了。当用户进入页面编辑模式后,Editor Parts或Catalog Parts就会自动出现在右侧,供用户来添加WebPart到Web部件区域或更改已有的WebPart属性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/437888.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python CheckiO 题解】House Password

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint无代码工作流设计开发实例——交通费报销流程(三)

4、SharePoint Designer无代码工作流的设计 开发工具为SharePoint Designer 2010 新建“列表工作流”&#xff0c;绑定“交通费报销单”表单库 设置工作流启动选项“创建项目时自动启动工作流” 编辑工作流 &#xff08;关于以下工作流详细设计可参考http://blog.csdn.net/mi…

【Python CheckiO 题解】The Most Wanted Letter

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint学习札记[1] — WSS与MOSS的关系

Windows SharePoint Services 是一个用来创建能够实现信息共享和文档协作的Web站点的引擎&#xff0c;从而有助于提高个人和团队的生产力。它是Microsoft Windows Server™ 2003中所提供的信息工作者体系结构的重要组成部分, 为Microsoft Office System和其他的桌面应用程序提供…

【Python CheckiO 题解】Time Converter (24h to 12h)

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint学习札记[2] — MOSS2007体系结构概述

熟悉微软Office产品线的人都知道&#xff0c;MOSS 2007的上一个版本SPS 2003的全称是 Office Sharepoint Portal Server&#xff0c;在新版本中&#xff0c;微软去掉了Portal一个词。从这个角度很清楚地看到微软对MOSS 2007的定位&#xff0c;是的&#xff0c;MOSS 已经不再仅仅…

【Python CheckiO 题解】Non-unique Elements

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

【Python CheckiO 题解】Sort Array by Element Frequency

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint学习札记[3] — Office SharePoint Server 2007部署

MOSS的第一步就是部署啦!《0ffice SharePoint Server 2007部署图示指南》图文并茂的展示了OSS2007的部署过程。虽然并不难&#xff0c;但对MOSS还摸不清方向的人来说是个不错的指导。手册的作者没有署名&#xff0c;也查不到出自谁手&#xff0c;在这里对他的劳动成果表示感谢…

【Python CheckiO 题解】Flatten a List

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint学习札记[4] — 创建SharePoint站点

为减少创建SharePoint站点过程中的麻烦&#xff0c;先打开IIS管理器&#xff0c;将“默认站点”停止或删除。后面的创建过程中&#xff0c;创建向导会自动创建端口为80的网站。 现在将&#xff1a; 1. 创建两个Web应用程序。 2. 创建共享服务。 3. 创建…

【Python CheckiO 题解】Long Repeat

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

SharePoint学习札记[5] — 设置匿名访问

设置网站的匿名访问一般有三种情况&#xff1a; 1. 创建Web应用程序时进行匿名访问设置。 2. 对已建立的网站进行匿名访问设置。 3. 对同一个网站分别设置验证访问和匿名访问。创建Web应用程序时进行匿名访问设置 新建Web应用程序时在“安全性配置”的“允许匿名访问”选…

【Python CheckiO 题解】Sun Angle

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

解决text-overflow: ellipsis;不生效的问题

按照text-overflow: ellipsis;使用规则&#xff0c;在标签样式中添加该属性未生效&#xff0c;例如&#xff1a; 写道 .text { text-overflow: ellipsis; } <div class"text">长文字长文字长文字长文字长文字长文字长文字长文字长文字长文字长文字长文字长文字…

【Python CheckiO 题解】Bird Language

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

Python CheckiO 题解系列 丨 博客目录索引

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本题解系列主要记录自己在用 Python 闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 …

文带你深入了解 Redis 内存模型

前言 Redis是目前最火爆的内存数据库之一&#xff0c;通过在内存中读写数据&#xff0c;大大提高了读写速度&#xff0c;可以说Redis是实现网站高并发不可或缺的一部分。 我们使用Redis时&#xff0c;会接触Redis的5种对象类型&#xff08;字符串、哈希、列表、集合、有序集合…

【Python CheckiO 题解】Pawn Brotherhood

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…

【Python CheckiO 题解】Xs and Os Referee

CheckiO 是面向初学者和高级程序员的编码游戏&#xff0c;使用 Python 和 JavaScript 解决棘手的挑战和有趣的任务&#xff0c;从而提高你的编码技能&#xff0c;本博客主要记录自己用 Python 在闯关时的做题思路和实现代码&#xff0c;同时也学习学习其他大神写的代码。 Chec…