构建web部件
web部件是运行在sharepoint foundation 网站页面上下文上的服务器端控件,web部件分为两种类型:SharePoint Web部件 和 ASP.NET Web部件。SharePoint Web部件继承自Microsoft.SharePoint.WebPartPages.WebPart ,ASP.NET Web部件继承自System.Web.UI.WebControls.WebParts.WebPart。MSDN中推荐使用ASP.NET Web部件。
创建ASP.NET Web部件:
在项目用中创建web部件时,会有2种方式:可视化web部件和web部件,创建后的结构如下图所示:
二者的区别是创建可视化部件时,VS会自动创建 XXX.ascx 的用户自定义控件,然后我们可以在用户自定义控件中像ASP.NET网站中一样编辑用户自定义控件。如果项目中需要我们将web部件和自定义控件分开组织,那么我们可以先创建web部件,然后创建一个自定义控件,然后通过代码将他们进行关联。
关键性的后台代码为:
private const string _ascxPath = @"~/路径/VisualWebPart1UserControl.ascx";
protected override void CreateChildControls()
{
Control control = Page.LoadControl(_ascxPath);
Controls.Add(control);
}
下面介绍web部件中xml,cs,webpart文件:
- Elements.xml 主要是对Web部件功能进行分组,<Property Name="Group" Value="Custom" />,可以修改此XML中得Value属性值,此值会限制在相应的分组中。
- WebPart1.webpart 此文件包含单个 Web 部件的属性设置,是一个简单的XML格式。此文件中可修改,此webpart显示的标题和介绍的信息。
- WebPart1.cs是此webpart的C#代码,上面的代码即存在此文件中,你还可以根据自己的需要添加相应的属性和方法。可以将某些字段用于在前台编辑此webpart时候显示出来,用于在页面中根据实际情况进行修改。