DevExpress控件使用交流,DevExpress中国社区 售前咨询
当前位置: 首页 > 开发资源 » 示例代码 » DevExpress ASPxGridView的单元格如何换行或省略部分文本

DevExpress ASPxGridView的单元格如何换行或省略部分文本

作者:huhm   来源:本站   浏览:Loading...次   发布时间:2012-03-01   评论:0条

如何使DevExpress ASPxGridView的单元格换行或省略部分文本?

要实现该功能,需自定义指定列的数据模板,设置其DataItemTemplate属性。这里有三种不同的在单元格中显示长文本的方式:

1.换行.文本内容根据列的宽度自动换行. 单元格的高度自动调整。这是ASPxGridView中默认的文本显示样式.如果文本中包含换行符(\r\n),并且希望其换行显示,您需要使用Memogrid column ,而不是Text.

2.省略.单元格文本必须放在一个DIV里面才可达到省略的效果,要实现该功能,需定义一个 DataItem 模板。DIV的text-overflow 样式需设置为"clip".

3. 带省略号的截取. 与上一种方法相同:需定义一个带有DIVdata item 模板. DIV的 text-overflow 样式设置为 "ellipsis".请注意text-overflow样式在IE里面支持,但在Firefoxignores下会被忽略.

这种情况下,如果要阻止文本换行,最简单的方法是设置white-space 属性为nowrap.另外,要使列宽固定,需将SettingsBehavior.ColumnResizeMode属性设置为Control或NextColumn.

关键代码:

public classMyDivTemplate : ITemplate{

        void ITemplate.InstantiateIn(Controlcontainer) {

           GridViewDataItemTemplateContainergridContainer = (GridViewDataItemTemplateContainer)container;

            HtmlGenericControldiv = new HtmlGenericControl();

            div.TagName = "div";

            div.Style["text-overflow"]= "ellipsis";

            div.Style["color"]= "red";

            div.Style["fond-weight"]= "bold";

            div.Style["width"]= "50px";

            div.Style["overflow"]= "hidden";

            div.Style["white-space"]= "nowrap";

            div.InnerText =gridContainer.Grid.GetRowValues(gridContainer.ItemIndex, "Product").ToString();

            container.Controls.Add(div);

        }

}

点击下载示例

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [http://www.devexpresscn.com/]
本文地址:http://www.devexpresscn.com/DevExpress-Resources/Demo-58.html

评论列表

暂无评论

请谈谈你的看法 请使用IE或者Firefox浏览器,暂不支持Chrome!

昵称 不填则默认为游客评论

DevExpress DXperience DXv2 v12

DevExpress DXperience 下载 download

DevExpress购买、价格、授权

慧都控件网为DevExpress界面控件的中国地区唯一正式授权经销商,正版控件销售公司,授权代理商,经销商及合作伙伴。

电话:400-700-1020
        023-66090381

邮箱:sales@evget.com

>>如何选择正规控件购买渠道