Web 部件控件说明文件V3
Web 部件控件说明文件包含从 WebPart 控件(或 Web 部件应用程序中使用的其他 ASP.NET 服务器控件或用户控件)导出到具有 .WebPart 扩展名的 XML 文件的属性值、状态数据以及程序集或源文件的详细信息。Web 部件导入功能使用说明文件将它描述的控件导入 Web 部件页,并使用说明文件与保存的数据配置导入的控件。本主题描述说明文件中包含的基本结构和 XML 元素。
<webParts> <webPart> <metaData> <type …/> <importErrorMessage …/> </metadata> <data> <properties> <ipersonalizable> <property …/> </ipersonalizable> <property …/> </properties> <genericWebPartProperties> <ipersonalizable> <property …/> </ipersonalizable> <property …/> </genericWebPartProperties> </data> </webPart> </webParts>
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
下表列出了可以包括在 Web 部件说明文件中的每个元素(各元素的直接子元素在相应元素的下面缩进),列出了存在于元素之上的所有属性,并汇总了元素的用途。请注意,如果控件实现 IPersonalizable 接口,则相应的 <ipersonalizable> 子元素将显示出来,并且以 <property> 元素的形式包含实现的属性;否则,<ipersonalizable> 元素不会显示在文件中。
元素 |
属性 |
摘要 |
||
---|---|---|---|---|
webParts webPart |
无。 |
文件中的父元素;它可以在每个文件中出现一次。此 XML 的逻辑是:对于每个文件,此元素可以包含多个 <webPart> 元素。但在当前的实现中,说明文件内只有一个 <webPart>。 |
||
webPart metaData data |
xmlns="http://schemas.microsoft.com/WebPart/v3"
|
表示其状态和属性数据包含在文件中的控件。当前,每个文件只能有一个 <webPart> 元素。 |
||
metaData type importErrorMessage |
无。 |
包含有关 <webPart> 元素的类型的信息,还包含一条当导入过程中出现错误时显示给用户的消息。每个 <webPart> 元素一个实例。 |
||
type |
type 元素必须指定 name 或 src 属性,并且可以同时指定两者。在指定两者的情况下,name 优先。 name 属性的值由一个包含有关 <webPart> 元素的类型信息和(可选)程序集信息的字符串组成。 src 属性提供用户控件的源文件的路径。 |
列出包含 <webPart> 元素的程序集的类型信息;如果 <webPart> 表示用户控件,则列出源文件的路径。每个 <webPart> 元素一个实例。 |
||
importErrorMessage |
无。 |
包含当导入过程中出现错误时显示给用户的消息的文本。每个 <webPart> 元素一个实例。 |
||
data 属性 genericWebPartProperties |
无。 |
包含 <webPart> 元素的状态和属性值数据。每个 <webPart> 元素一个实例。 |
||
properties ipersonalizable property |
无。 |
包含 <property> 元素或一个 <ipersonalizable> 元素(该元素包含 <property> 子元素),或者包含两者。<properties> 元素始终存在,但仅当 <webPart> 具有可个性化的属性时才具有 <property> 子元素。每个 <webPart> 元素一个实例。 |
||
genericWebPartProperties ipersonalizable property |
无。 |
包含 <property> 元素或一个 <ipersonalizable> 元素(该元素包含 <property> 子元素),或者包含两者。仅当对应于 <webPart> 的控件并不从 WebPart 类继承时,该元素才存在。每个 <webPart> 元素一个实例。 |
||
ipersonalizable property |
无。 |
<properties> 元素和 <genericWebPartProperties> 元素的子元素。仅当对应于 <webPart> 元素的控件实现 IPersonalizable 接口时,该元素才出现。它包含一个或多个 <property> 元素。每个 <webPart> 元素一个实例。 |
||
property |
Property 元素具有三个属性:name、type 和 null。name 和 type 属性是必需的;仅当属性具有 null 值时才使用 null。 name 属性 (Attribute) 是对应于 <webPart> 元素的控件上特定属性 (Property) 的名称。 null 属性 (Attribute) 可以采用值 true 或 false;仅当属性 (Property) 实际具有 null 值时,才使用它来区分来自空字符串 ("") 值的值。 type 属性 (Attribute) 标识在 name 属性 (Attribute) 中引用的属性 (Property) 的 Type。type 的实际值可以是包含完全限定的类型名称的字符串,也可以是使用下面列出的其中一个缩写的类型名称的字符串。 * string * int * bool * double * single * datetime * color * unit * fontsize * object * direction(表示 ContentDirection) * helpmode(表示 WebPartHelpMode) * chromestate(表示 PartChromeState) * chrometype(表示 PartChromeType) * exportmode(表示 WebPartExportMode) |
<properties>、<genericWebPartProperties> 和 <ipersonalizable> 元素的子元素。此元素包含 <webPart> 元素中每个属性值或状态数据项的名称/值对。属性 (Property) 的实际数据包含在 <property> 元素标记之间,并且属性 (Property) 项的名称和类型是由属性 (Attribute) 指定的。包含元素的三种类型的父元素中可以有零个到多个 <property> 元素。 |
![](http://i.msdn.microsoft.com/Platform/Controls/CollapsibleArea/resources/minus.gif)
下面的代码示例演示两个 .WebPart 说明文件,这两个说明文件是从 Web 部件应用程序中的控件实例导出的。第一个示例演示的文件对应于一个从基 WebPart 类继承的控件。请注意,该控件的属性数据全部包含在 <properties> 节中。第二个示例演示的文件对应于一个并不从 WebPart 类继承的 ASP.NET 服务器控件。请注意,该控件的属性数据全部包含在 <genericWebPartProperties> 节中。
<!-- File exported from a System.Web.UI.WebControls.WebParts.WebPart control. --> <?xml version="1.0" encoding="utf-8"?> <webParts> <webPart xmlns="http://schemas.microsoft.com/WebPart/v3"> <metaData> <type name="Samples.AspNet.CS.Controls.TextDisplayWebPart, App_Code.zq0cecf5, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" /> <importErrorMessage> Cannot import this Web Parts control. </importErrorMessage> </metaData> <data> <properties> <property name="AllowClose" type="bool">True</property> <property name="Width" type="unit" /> <property name="AllowMinimize" type="bool">True</property> <property name="ContentText" type="string" null="true" /> <property name="AllowConnect" type="bool">True</property> <property name="ChromeType" type="chrometype"> Default </property> <property name="TitleIconImageUrl" type="string" /> <property name="Description" type="string" /> <property name="Hidden" type="bool">False</property> <property name="TitleUrl" type="string" /> <property name="AllowEdit" type="bool">True</property> <property name="Height" type="unit" /> <property name="HelpUrl" type="string" /> <property name="Title" type="string" /> <property name="CatalogIconImageUrl" type="string" /> <property name="Direction" type="direction"> NotSet </property> <property name="ChromeState" type="chromestate"> Normal </property> <property name="AllowZoneChange" type="bool">True</property> <property name="AllowHide" type="bool">True</property> <property name="HelpMode" type="helpmode">Navigate</property> <property name="ExportMode" type="exportmode">All</property> </properties> </data> </webPart> </webParts>
<!-- File exported from a System.Web.UI.WebControls.BulletedList control placed in a Web Parts zone. --> <?xml version="1.0" encoding="utf-8"?> <webParts> <webPart xmlns="http://schemas.microsoft.com/WebPart/v3"> <metaData> <type name="System.Web.UI.WebControls.BulletedList, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <importErrorMessage> Cannot import this Web Parts control. </importErrorMessage> </metaData> <data> <properties /> <genericWebPartProperties> <property name="AllowClose" type="bool">True</property> <property name="Width" type="unit" /> <property name="AllowMinimize" type="bool">True</property> <property name="AllowConnect" type="bool">True</property> <property name="ChromeType" type="chrometype"> Default </property> <property name="TitleIconImageUrl" type="string" /> <property name="Description" type="string" /> <property name="Hidden" type="bool">False</property> <property name="TitleUrl" type="string" /> <property name="AllowEdit" type="bool">True</property> <property name="Height" type="unit" /> <property name="HelpUrl" type="string" /> <property name="Title" type="string"> Favorite Links </property> <property name="CatalogIconImageUrl" type="string" /> <property name="Direction" type="direction"> NotSet </property> <property name="ChromeState" type="chromestate"> Normal </property> <property name="AllowZoneChange" type="bool"> True </property> <property name="AllowHide" type="bool">True</property> <property name="HelpMode" type="helpmode"> Navigate </property> <property name="ExportMode" type="exportmode"> All </property> </genericWebPartProperties> </data> </webPart> </webParts>