2011-12-01 48 views
0

我需要動態地更改列表,列,聚合顯示在一個WebPart上...所以我們正在渲染一個HTML表使用ListViewByQuery.RenderControl()。但是,如果您導航到SharePoint網站內部的視圖,則此方法似乎不會呈現聚合,因爲您會看到它們。我們嘗試了SPView.RenderAsHtml()以及...也沒有快樂......請告訴我,有一個解決這個非常惱人的問題。SharePoint:ListViewByQuery.RenderControl()或SPView.RenderAsHtml()...不顯示聚合

回答

1

我們最終創建了XsltListViewWebPart的一個實例。調用此RenderControl()不支持aggregrates,等它繼續是這樣的:

var xmlDocument = new XmlDocument(); 
xmlDocument.LoadXml(list.DefaultView.GetViewXml()); 
// etc 
XsltListViewWebPart wp = new XsltListViewWebPart(); 
wp.XmlDefinition = xmlDocument.OuterXml; 
// etc 
wp.DataBind(); 

      using (var stringWriter = new StringWriter()) 
      { 
       using (var writer = new HtmlTextWriter(stringWriter)) 
       { 
        wp.RenderControl(writer); 
       } 

       return stringWriter.ToString(); 
      } 

多一點那麼複雜....但這是一般的想法...

0

您可能會嘗試2個Web部件的組合:1)開箱即用列表視圖顯示視圖中的視圖的webpart,因爲它們在列表中顯示2)放置在同一頁面上的無UI用戶界面並更新視圖根據關聯視圖的查詢列表查看webpart的查詢。更新應該通過webparts被放置到的頁面的webpart管理器完成。

祝你好運。