SharePoint中是否有某种方法可以按每个用户更改文档库视图?
我们正在使用WSS3.0,有人问我,用户是否可以按每个用户设置默认视图。是否有人知道有任何方法(编程或通过GUI本身)可以让用户在每个用户的基础上更改默认视图?30分钟的谷歌搜索和在管理菜单上四处搜索结果都是徒劳的。如果不是,这是MOSS 2007的一项功能吗?您可能希望了解MOSS 2007的功能受众。SharePoint中是否有某种方法可以按每个用户更改文档库视图?,sharepoint,wss,sharepoint-2007,wss-3.0,Sharepoint,Wss,Sharepoint 2007,Wss 3.0,我们正在使用WSS3.0,有人问我,用户是否可以按每个用户设置默认视图。是否有人知道有任何方法(编程或通过GUI本身)可以让用户在每个用户的基础上更改默认视图?30分钟的谷歌搜索和在管理菜单上四处搜索结果都是徒劳的。如果不是,这是MOSS 2007的一项功能吗?您可能希望了解MOSS 2007的功能受众。 不幸的是,它在WSS3.0中不可用 这里有一个合理的概述 如果您在WSS 3.0中工作,您可以通过使用Web部件以编程方式切换或修改视图,该Web部件获取ListViewWebPart并动态修
不幸的是,它在WSS3.0中不可用
这里有一个合理的概述 如果您在WSS 3.0中工作,您可以通过使用Web部件以编程方式切换或修改视图,该Web部件获取ListViewWebPart并动态修改查询或视图。下面是我用来过滤任何给定视图内容的一些示例代码:
private ListViewWebPart GetListViewWebPart()
{
ListViewWebPart webPart = new ListViewWebPart();
foreach (WebPart wp in WebPartManager.WebParts)
{
if (wp.GetType() == typeof(ListViewWebPart))
{
webPart = (ListViewWebPart)wp;
}
}
return webPart;
}
private void ApplyStrategySecurity(string camlFilter)
{
// Get the listview webpart
ListViewWebPart wp = GetListViewWebPart();
// Apply the query to the listview
XmlDocument doc = new XmlDocument();
doc.LoadXml(wp.ListViewXml);
if (camlFilter.Length > 0)
{
XmlNode queryNode = doc.SelectSingleNode("//Query");
XmlNode whereNode = queryNode.SelectSingleNode("Where");
if (whereNode != null)
queryNode.RemoveChild(whereNode);
XmlNode newNode = doc.CreateNode(XmlNodeType.Element, "Where", string.Empty);
newNode.InnerXml = camlFilter;
queryNode.AppendChild(newNode);
}
wp.ListViewXml = doc.OuterXml;
}