2011-12-01 3 views
0

WebPart에 표시되는 목록, 열, Aggrgrates ...를 동적으로 변경해야합니다. 그러면 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 개의 웹 파트 조합을 시도해 볼 수 있습니다. 1) 목록에있는대로보기를 표시하는 기본 제공 목록보기 웹 파트 2) 동일한 페이지에 배치되어보기를 업데이트하는 UI가없는 웹 파트 2) 연관된보기의 쿼리에 따라 목록보기 웹 파트의 쿼리 업데이트는 두 웹 파트가있는 페이지의 webpart 관리자를 통해 수행되어야합니다.

행운을 비네.

관련 문제