准备开发自定义字段类型
-
在 Visual Studio 中,从“工具”菜单中选择“外部工具”。
-
在“外部工具”对话框中,单击“添加”并在“标题”中输入获取程序集公钥。
-
通过浏览到 sn.exe 填充“命令”文本框。此程序通常安装在以下位置:
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\sn.exe。 -
在“参数”文本框中,键入下面的内容(区分大小写):-Tp "$(TargetPath)"。
-
启用“使用输出窗口”复选框。
-
单击“确定”。新命令将添加到“工具”菜单中。
设置项目 设置自定义字段项目
-
在 Visual Studio 2005 中,选择“文件”菜单上的“新建项目”。
-
在“新建项目”对话框中,在“项目类型”窗口中选择“SharePoint”。(如果该窗口中没有 SharePoint 项目选项,则需要安装 Visual Studio 2005 Extensions for Windows SharePoint Services 3.0 1.0 或更高版本。)
-
在“模板”窗口中选择“空白”。
-
在“名称”框中,键入 ISBN_Field_Type。
-
单击“确定”。
-
在“解决方案资源管理器”中,右键单击项目名称 ISBN_Field_Type,并选择“属性”,然后选择“生成事件”选项卡。
在“后期生成事件命令行”框中键入下面的内容。这些行可确保每当重新生成项目时,均会将最新版本的项目文件复制到正确的位置,并可确保重新启动 Windows SharePoint Services 3.0 以便加载最新版本的程序集。
cd "$(ProjectDir)" "%programfiles%\microsoft visual studio 8\sdk\v2.0\bin\gacutil" /i "$(TargetPath)" /nologo /f %systemroot%\system32\iisapp.vbs /a "SharePoint_App_Pool" /r xcopy *.ascx "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES\" /y xcopy fldtypes*.xml "C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\XML\" /y -
用分配给您的 Windows SharePoint Services 3.0 Web 应用程序的 Internet Information Server (IIS) 应用程序池的实际名称替换 SharePoint_App_Pool。此名称通常与承载应用程序的 IIS 网站的名称相同;例如“SharePoint - 80”。(如果此名称中没有空格,则可以省略引号。)
-
单击该选项卡上已启用的任何其他控件,以便 Visual Studio 能够检测到您所做的更改,同时选项卡标签上会显示一个星号,然后从“文件”菜单中选择“全部保存”。
-
在“解决方案资源管理器”中,右键单击项目名称 ISBN_Field_Type,选择“添加”,再选择“新建项目”。
-
在“添加新项”对话框中,在“类别”窗口中选择“SharePoint”,然后在“模板”窗口中选择“字段控件”。
-
在“名称”框中,键入 ISBN,然后单击“添加”。此操作会创建两个将在后续步骤中编辑的文件 ISBN.Field.cs 和 ISBN.FieldControl.cs。同时,还会创建一个强名称并将其存储到您的项目中称为 Temporary.snk 的文件中。
-
在“解决方案资源管理器”中,右键单击项目名称 ISBN_Field_Type,并选择“属性”。
-
打开“应用程序”选项卡,将“程序集名称”更改为 MyCompany.SharePoint.ISBN_Field_Type。(在此演练中,使用您的公司的名称替换 MyCompany。)
-
将“默认命名空间”更改为 MyCompany.SharePoint。
-
单击工具栏上的“全部保存”按钮。
-
在“解决方案资源管理器”中,右键单击“引用”节点,然后选择“添加引用”。
-
在“添加引用”对话框上,打开“浏览”选项卡,导航到
C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\。 -
选择
PresentationFramework.dll,然后单击“确定”。(此程序集包含 ValidationRule 类的定义,将在您在下一过程中创建的文件中引用该类。)

浙公网安备 33010602011771号