我有一个SPGridView,它显示列表中的项目(使用spboundfield)。
列表中有一些查找字段。在我的SPGridview中的多查找文件中,查找字段的过滤值以这种格式显示:
{ID}; {#}值
我现在有什么选择?
答案 0 :(得分:1)
为SPGridView
生成列,需要使用SPBoundField
,而不是BoundField
!
答案 1 :(得分:0)
为模板字段创建自定义模板类,在该模板类中重新格式化列表中的查找字段,最简单的方法当然是SPField类的GetValueAsHtml。 这是一个关于通用模板的好教程:http://www.developer.com/article.php/3609991
答案 2 :(得分:0)
您可以使用dataviewwebpart类而不是spgridview来完成此操作。使用xslt,您可以访问许多库,帽子将帮助您进行格式化。马克Anderson在codeplex上有一个很棒的xslt函数库,名为sharepoint xslt templates。
http://sympmarc.com/2010/04/22/new-codeplex-project-sharepoint-xsl-templates-spxslt/
答案 3 :(得分:0)
以下是我解决这个问题的方法:
<asp:TemplateField HeaderText="Campaign Members">
<ItemTemplate>
<%# RemoveCharacters(Eval("CampaignMembers").ToString()) %>
</ItemTemplate>
</asp:TemplateField>
在代码中:
// 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();
}