转:http://www.it165.net/design/html/201204/1131.html
我们开发中,通常需要写各种各样的部件来实现我们的展示或者功能,下面就介绍下刚刚接触的QuickPart+用户控件的方式,算是自己的学习笔记,也和大家交流下心得。
1、 新建Web应用程序
2、 在项目上,右键 – 添加 – 新建项 – 选择用户控件
3、 即可在用户空间里面,编写我们的代码了,添加Microsoft.SharePoint.dll的引用,代码上添加命名空间引用using Microsoft.SharePoint;
[Dll位置:C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\ISAPI]
4、 可以添加protected override void Render(HtmlTextWriter writer)函数,进行输出。
01.
protected
override
void
Render(HtmlTextWriter writer)
02.
{
03.
SPSite mySite =
new
SPSite(
"http://moss:2012"
);
04.
SPWeb myWeb = mySite.OpenWeb();
05.
SPList myList = myWeb.Lists[
"Test"
];
06.
SPQuery myQuery =
new
SPQuery();
07.
myQuery.Query =
"<OrderBy><FieldRef Name='Created' Ascending='False' /></OrderBy>"
;
08.
SPListItemCollection myListItemCol;
09.
myListItemCol = myList.GetItems(myQuery);
10.
writer.Write(
"<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"
);
11.
for
(
int
i = 0; i <= 6; i++)
12.
{
13.
writer.Write(
"<tr>"
);
14.
try
15.
{
16.
writer.Write(myListItemCol[i][
"Title"
].ToString());
17.
writer.Write(
"</td></tr>"
);
18.
}
19.
catch
(Exception ex)
20.
{
21.
}
22.
}
23.
}
5、 在Default.aspx页中添加引用
<%@ Register src="ReadListUserControl.ascx" tagname="ReadListUserControl" tagprefix="uc1" %>
6、在页面上,引用控件(如图1)
<uc1:ReadListUserControl ID="ReadListUserControl1" runat="server" />
(图1)
7、 添加好用户控件,就可以浏览Default.aspx页面了(如图2)
(图2)
Ps:我们可以通过这样的用户控件,编写我们需要的WebPart,然后通过QuickPart进行引用,把我们编译的ReadListUserControl.ascx放到C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES位置,即可引用。