如何判断SPField是富文本框还是普通文本框?
问题描述:
任何人都可以告诉我如何找出SPField
对象是富文本框还是普通文本框?如果它是一个富文本框,那么我想使用GetFieldValueAsHtml
,否则我想使用GetFieldValueAsText
方法。我已经看过SPField.Type
,但我不是盲人(非常可能),或者只是有一个代表所有文本字段的Text
选项。如何判断SPField是富文本框还是普通文本框?
答
private bool IsRichTextField(SPListItem item, string fieldName)
{
bool isRichText = false;
if (item.Fields.ContainsField(fieldName) && item.Fields[fieldName] is SPFieldMultiLineText)
{
var multiLineField = item.Fields[fieldName] as SPFieldMultiLineText;
isRichText = multiLineField.RichText;
}
return isRichText;
}
这并不真正发挥作用。我发现多行文本框是SPFieldType.Note所以如果字段是这个我使用HTml返回,否则我返回值为文本 – Paul 2010-03-31 08:00:35