ASP.NET Gridview从后面的代码中截断BoundField

问题描述

我正在向ASP.NET网格视图添加动态列。

添加动态列的代码

List<DataControlField> columns; // this contains all gridview columns. 
BoundField boundField = new BoundField();
boundField.datafield = long_text_column.sortExpression;
boundField.sortExpression = long_text_column.sortExpression;
columns.Insert(0,boundField);

如何修剪/截断long_text_column以在UI上仅显示前15个字符。

注意:出于其他原因,我不想在数据库级别进行修剪。

解决方法

我将仅向get返回最大长度为15的long_text_column的类中添加一个额外的属性。

public class DataControlField
{
    public string long_text_column { get; set; }

    public string long_text_column_max15
    {
        get
        {
            if (!string.IsNullOrEmpty(long_text_column) && long_text_column.Length > 15)
                return long_text_column.Substring(0,15);
            else
                return long_text_column;
        }
    }
}