C# Sharepoint 2010中的自定义AnnouncementListItem可视Web部件
我正在尝试创建一个可视化web部件来显示最新的5个公告列表项 我需要公告列表项目标题显示为链接,任何附件(仅图片)显示在其正上方。我计划每15-20分钟刷新一次web部件,以便能够显示最新的公告 我不知道最好的asp控件和页面设计是如何显示这些项目的 以下是CAML查询以及我所拥有的其余代码:C# Sharepoint 2010中的自定义AnnouncementListItem可视Web部件,c#,.net,visual-studio-2010,sharepoint-2010,caml,C#,.net,Visual Studio 2010,Sharepoint 2010,Caml,我正在尝试创建一个可视化web部件来显示最新的5个公告列表项 我需要公告列表项目标题显示为链接,任何附件(仅图片)显示在其正上方。我计划每15-20分钟刷新一次web部件,以便能够显示最新的公告 我不知道最好的asp控件和页面设计是如何显示这些项目的 以下是CAML查询以及我所拥有的其余代码: using (SPSite oSPsite = new SPSite("http://mySharePointWebApp:Port#/")) { using
using (SPSite oSPsite = new SPSite("http://mySharePointWebApp:Port#/"))
{
using (SPWeb oSPWeb = oSPsite.OpenWeb())
{
oSPWeb.AllowUnsafeUpdates = true;
// Fetch the List
SPList list = oSPWeb.Lists["Announcements"];
SPQuery spQuery = new SPQuery();
//spQuery.Query = "<Where> <Eq> <FieldRef Name='Title' /> <Value Type='Text'></Value> </Eq> </Where>";
spQuery.Query = "";
spQuery.RowLimit = 5;
// Show item in text box
SPListItemCollection oListCollection = list.GetItems(spQuery);
foreach (ListItem oListItem in oListCollection)
{
// **What should I go with here?**
}
}
}
使用(SPSite oSPsite=new SPSite(“http://mySharePointWebApp:Port#/"))
{
使用(SPWeb-oSPWeb=oSPsite.OpenWeb())
{
oSPWeb.AllowUnsafeUpdates=true;
//取名单
SPList list=oSPWeb.list[“公告”];
SPQuery SPQuery=新建SPQuery();
//spQuery.Query=“”;
spQuery.Query=“”;
spQuery.RowLimit=5;
//在文本框中显示项目
SPListItemCollection-oListCollection=list.GetItems(spQuery);
foreach(oListCollection中的ListItem oListItem)
{
//**我应该在这里用什么**
}
}
}
您可以使用类似listbox的repeater控件,并使用项目模板对其进行自定义
<asp:ListBox>
<item template>
<div>
<image control/>
<text control/>
</div>
</item template>
</asp:ListBox>
嘿,肯,谢谢你的意见。不过,我对编程还是很陌生,我想知道您是否可以对如何将linq或CAML查询数据绑定到listbox控件进行更多的扩展。
var top5Announcements = (From a in siteDataContext.Announcements OrderBy a.id descending select a).Take(5)