65.9K
CodeProject 正在变化。 阅读更多。
Home

每日名言 Web 部件

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.75/5 (5投票s)

2010年6月19日

CPOL

2分钟阅读

viewsIcon

33628

downloadIcon

323

SharePoint 2010 服务器的每日名言 Web 部件。

引言

在这个例子中,我将为 SharePoint 2010 网站构建一个每日一语 Web 部件。为了在您的本地计算机上安装 SharePoint 2010,请阅读 在 Windows Vista, Windows 7 和 Windows Server 2008 上设置 SharePoint 2010 的开发环境。为了开发此 Web 部件,您需要 Sharepoint 2010 和 Visual Studio 2010,最终您将获得以下类型的 Web 部件,它将从列表中获取一个随机的每日一语。

1.jpg

Using the Code

创建一个可视 Web 部件项目并将其命名为 TOTD。

2.jpg

添加您要部署 Web 部件的网站 URL。

3.jpg

单击“完成”并删除默认创建的 Web 部件,然后按如下方式添加一个新的可视 Web 部件

4.jpg

在您的设计方案上,放置一个图像框和两个标签,并将它们放置在一个表格中,随您所愿。

<style type="text/css"> 

.style1 
{ 
width: 409px; 
} 
.style2 
{ 
width: 100px; 
} 
.style3 

{ 
height: 16px; 
} 
</style> 

<table class="style1"> 
<tr> 
<td rowspan="2" class="style2"> 
<asp:Image ID="ImgAuthor" runat="server" Height="100px" Width="100px" /> 
</td> 
<td valign="top" class="style3"> 
<asp:Label ID="lblTOTD" runat="server" Font-Italic="True" Font-Names="Calibri" 
Font-Size="12pt" style="z-index: 1; left: 120px; top: 29px; width: 376px" 
ForeColor="#003399"></asp:Label> 
</td> 
</tr> 
<tr> 
<td align="right" valign="top"> 
<asp:Label ID="lblAuthor" runat="server" Font-Names="Calibri" 
Font-Size="9pt" style="z-index: 1; left: 239px; top: 97px; text-align:right; 
height: 13px; width: 252px"></asp:Label> 
</td> 
</tr> 
</table> 

将它们命名为 ImageBox:ImgAuthor

标签lblTOTD, lblAuthor ,您将获得以下类型的前端。

5.jpg

好的..现在您完成了前端设计部分。让我们进入代码后台。

protected void Page_Load(object sender, EventArgs e) 
{ 
SPWeb oWebsite = SPContext.Current.Web; 
SPList oList = oWebsite.Lists["QOTD"]; 
SPListItemCollection collItem = oList.GetItems("Thought", "AuthorImage", "AuthorName"); 

Random random = new Random(); 
int RndItem = random.Next(1, collItem.Count+1); 
int LastDay = 0; 
int TOTD = 0; 
int CurrentDay = DateTime.Now.DayOfYear; 

try 
{ 
LastDay = int.Parse(Application["LastDay"].ToString()); 
TOTD = int.Parse(Application["TOTD"].ToString()); 

if (LastDay != CurrentDay) 
{ 
Application["LastDay"] = CurrentDay; 
Application["TOTD"] = RndItem; 
SPListItem oItem = collItem[RndItem-1]; 
this.ImgAuthor.ImageUrl = SPEncode.HtmlEncode
	(oItem["AuthorImage"].ToString().TrimEnd('?', '.', ',', ' ')); 
this.lblTOTD.Text = oItem["Thought"].ToString(); 
this.lblAuthor.Text = SPEncode.HtmlEncode(oItem["AuthorName"].ToString()); 
} 

else 
{ 
SPListItem oItem = collItem[TOTD-1]; 
this.ImgAuthor.ImageUrl = SPEncode.HtmlEncode
	(oItem["AuthorImage"].ToString().TrimEnd('?', '.', ',', ' ')); 
this.lblTOTD.Text = oItem["Thought"].ToString(); 
this.lblAuthor.Text = SPEncode.HtmlEncode(oItem["AuthorName"].ToString()); 
} 

} 
catch 
{ 
Application["LastDay"] = CurrentDay; 
Application["TOTD"] = RndItem; 
SPListItem oItem = collItem[RndItem - 1]; 
this.ImgAuthor.ImageUrl = SPEncode.HtmlEncode
	(oItem["AuthorImage"].ToString().TrimEnd('?', '.', ',', ' ')); 
this.lblTOTD.Text = oItem["Thought"].ToString(); 
this.lblAuthor.Text = SPEncode.HtmlEncode(oItem["AuthorName"].ToString()); 
}
}

现在您已经完成了 Web 部件的开发。让我们将您的 Web 部件部署到 Sharepoint 2010 服务器。

为了部署,您必须在您的网站上创建一个图像库和一个自定义列表。创建一个自定义列表并将其命名为 QOTD。创建列

1

  • 列类型 - > 超链接或图片
  • 列名称 - > AuthorImage
  • 格式化 URL 为 - > 图片

2

  • 列类型 - > 单行文本
  • 列名称 - > AuthorName

3

  • 列类型 - > 多行文本
  • 列名称 - > Thought(想法)

现在将标题列设置为如下

6.jpg

转到列表工具->列表->修改视图并仅勾选显示上述字段

7.jpg

现在您必须创建一个图片库来存储您的作者的图像。

创建一个图片库并将其命名为“QOTDImage”。

创建一个单行文本列并将其命名为 Author ,并将标题列重命名为“Name”。 最后,您将拥有以下类型的库

8.jpg

现在您必须尽可能多地填写 QOTD 列表,并将 AuthorImage 链接到图像库中的相关图像。

9.jpg

在我的例子中,“http://ca5-sd-c-022:8080/sites/behive/QOTDImage/Einstine.bmp”。

10.jpg

所有事情现在都 OK 了。

编译项目并部署它,然后您将在您的网站上拥有您的 Web 部件。

转到网站操作-> 编辑页面 ->插入(编辑工具功能区)->Web 部件->类别->自定义,您将看到名为“TOTD_Web_Part”的 Web 部件。添加它并享受。

历史

  • 2010年6月19日:初始更新
© . All rights reserved.