2010-11-28 6 views
1

나는 (spboundfield를 사용하여) 목록의 항목을 표시하는 SPGridView가 있습니다.조회 필드에 대한 Gridview 표시

목록에는 몇 가지 조회 필드가 있습니다. 멀티 조회 fileds 내 SPGridview에 lookupfield의 필터 값이 형식으로 표시 :

{ID} # {값}


무엇 내 옵션이 지금인가?

답변

0

템플릿 필드에 대한 사용자 지정 템플릿 클래스를 만들고 해당 템플릿 클래스에서 조회 필드를 다시 포맷하면 가장 간단한 방법은 물론 SPField 클래스의 GetValueAsHtml입니다. 다음은 일반 템플릿에 대한 유용한 자습서입니다. http://www.developer.com/article.php/3609991

+0

string.replace 함수를 사용하여이 문제를 해결할 수있는 방법이 있습니까? –

0

이 작업을 수행하려면 spgridview 대신 dataviewwebpart 클래스를 사용할 수 있습니다. xslt를 사용하면 서식 파일을 작성하는 데 도움이되는 많은 라이브러리에 액세스 할 수 있습니다. Marc d. Anderson은 shareplex xslt 템플릿이라는 codeplex에 훌륭한 xslt 함수 라이브러리를 가지고 있습니다. 코드에서

<asp:TemplateField HeaderText="Campaign Members"> 
    <ItemTemplate> 
    <%# RemoveCharacters(Eval("CampaignMembers").ToString()) %> 
    </ItemTemplate> 
</asp:TemplateField> 

:

여기 http://sympmarc.com/2010/04/22/new-codeplex-project-sharepoint-xsl-templates-spxslt/

+0

정렬에 문제가 있기 때문에 Dataview wp에서 벗어나려고합니다. dvwp는 전체 데이터 세트를 정렬하는 대신 표시된 항목 만 정렬합니다. –

0

내가이 문제를 해결하는 방법입니다 SPGridView을 위해 생성하는 열의

// Make sure declare using System.Text.RegularExpression; 
protected string RemoveCharacters(object String) { 
    string s1 = String.ToString(); 
    string newString = Regex.Replace(s1, @"#[\d-];", string.Empty); 
    newString = Regex.Replace(newString, "#", " "); 
    return newString.ToString(); 
} 
1

을 대신 SPBoundField, BoundField를 사용해야합니다!

관련 문제