首先是自动换行,可以创建一个repositoryItemMemoEdit 并绑定到需要换行的列中

再设置一下repositoryItemMemoEdit高度自适应,这样子就完成了自动换行了

 repositoryItemMemoEdit1.AutoHeight = true;

之后需要使用事件advBandedGridView1_CalcRowHeight。这个事件是让我们可以单独设置行高。因为advBandedGridView没有rowautoheight所以需要我们自己设置

代码如下

//获得字体的宽度和高度。
Graphics graphics = CreateGraphics();
SizeF sizef = graphics.MeasureString(advBandedGridView1.GetRowCellValue(e.RowHandle, "测试").ToString(), advBandedGridView1.Appearance.Row.Font);
//根据字体的宽度除以这列的宽度计算得出需要几行。使用Ceiling把小数都进一位成整数
double doub = Math.Ceiling(sizef.Width / advBandedGridView1.Columns["测试"].Width);
//设置行高为需要几行乘以这个字体的高度
e.RowHeight = (int)(doub*sizef.Height);

完整代码

using DevExpress.XtraGrid.Views.Grid.ViewInfo;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms; namespace 文件管理
{
public partial class Form1 : DevExpress.XtraEditors.XtraForm
{
public Form1()
{
InitializeComponent();
//添加测试数据并绑定数据源
DataTable dt = new DataTable();
dt.Columns.Add("测试");
dt.Columns.Add("测试1");
dt.Rows.Add("谁谁谁时尚所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所s", "ssssssssss");
dt.Rows.Add("ssss","wwwww");
dt.Rows.Add("谁谁谁wwwwwwww时尚所所2所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所所s", "siiiiiiihiiiiiii");
gridControl1.DataSource = dt;
//自适应高度
repositoryItemMemoEdit1.AutoHeight = true;
}
private void advBandedGridView1_CalcRowHeight(object sender, DevExpress.XtraGrid.Views.Grid.RowHeightEventArgs e)
{
//获得字体的宽度和高度。
Graphics graphics = CreateGraphics();
SizeF sizef = graphics.MeasureString(advBandedGridView1.GetRowCellValue(e.RowHandle, "测试").ToString(), advBandedGridView1.Appearance.Row.Font);
//根据字体的宽度除以这列的宽度计算得出需要几行。使用Ceiling把小数都进一位成整数
double doub = Math.Ceiling(sizef.Width / advBandedGridView1.Columns["测试"].Width);
//设置行高为需要几行乘以这个字体的高度
e.RowHeight = (int)(doub*sizef.Height);
}
}
}

Demo下载地址https://download.csdn.net/download/qq_38977099/10872914

大家如果有问题可以

Console.WriteLine(”加群“+"537905238");

devexpress 中advBandedGridView内容自动换行和调整自适应行高的更多相关文章

  1. C# 设置Excel数据自适应行高、列宽的2种情况

    Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小.数据内容长度不一而出现,列宽过宽.过窄或者行高过大.过小的问题.常见的解决方法是调整行高.列宽.在Microsoft Excel ...

  2. Java 设置Excel自适应行高、列宽

    在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定 ...

  3. iOS自适应行高方法及问题

    最近一周被项目的动态高度虐的很惨,感觉浪费了很多时间,但是值得高兴的是对动态高度的使用掌握了好多方法,并且知道了方法之间的区别和优缺点. 1.最常用的: UITableView+FDTemplateL ...

  4. 在iOS中如何正确的实现行间距与行高

    最近准备给 VirtualView-iOS 的文本元素新增一个 lineHeight 属性,以便和 VirtualView-Android配合时能更精确的保证双平台的一致性.面向 Google 以及 ...

  5. element UI 调整表格行高

    使用element UI的table默认属性,绘制表格如下: 该表格的行高太大了,于是想调小一些. 查看官网的文档,table有几个属性, row-style:行的 style 的回调方法,也可以使用 ...

  6. OAF 中对文字实现html效果及对超级长文本实现默认换行,对只读的messageTextInput中的内容自动换行

    今天遇到一个需求,客户注册页面客户化了一个超级长的注册须知,内容很多.但是样式相对又要做起来好看点. 注册须知的内容使用多个message拼接而成. 老大说rawText支持html样式,于是我想到了 ...

  7. DevExpress中XtraGrid控件对GridView每行的颜色设置 zt

    改变行颜色 private void GridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArg ...

  8. rmReport 自适应行高(自动行高)

    这个问题 1.先中主项数据--属性--stretched(伸展):true 选中主项数据中的所有列--属性--其他属性--自动折行 --伸展

  9. 调整UILabel行高间距并返回自定义宽高度

    // 获取label文字 NSString *labelString = @"XXXXXXXXXXXXXX"; // 设置自定义宽度或高度 CGSize labelSize = C ...

  10. ui-grid样式,表格高度自适应行高,没有滚动条,去掉表头

    前后端设置:

随机推荐

  1. centos7设置时间和上海时区并进行同步

    1.设置时区(同步时间前先设置) timedatectl set-timezone Asia/Shanghai 2.安装组件 yum -y install ntp systemctl enable n ...

  2. HBase原理深入

    HBase 读写数据流程 Hbase 读数据流程 首先从 zk 找到 meta 表的 region 位置,然后读取 meta 表中的数据,meta 表中存储了用户表的 region 信息 根据要查询的 ...

  3. Windows Server体验之安装

    微软在Windows Server家族中有一个新的家族,名字就是Windows Server.这个按半年频道更新的版本目前是1903和Windows 10的命名方式一样.这个产品就是以前的服务器核心安 ...

  4. 《Java基础——循环语句》

    Java基础--循环语句       1. while语句: 规则: 1. 首先计算表达式的值. 2. 若表达式为真,则执行循环语法,直至表达式为假,循环结束.   格式: while(表达式) 语句 ...

  5. netstat -lnp |grep XXX后不显示进程

    netstat -lnp |grep XXX后不显示进程,不一定是没有进程,可能是这个命令不好使,换成 ps -ef | grep XXX

  6. 洛谷P2860 [USACO06JAN]Redundant Paths G (tarjan,边双缩点)

    本题的大意就是加最少的边使得图成为边双. 多举例子,画图分析可得:最终答案就是叶子节点(度数为1的点)的个数加1在除以2. 那么我们的目的就转化为找叶子节点: 首先通过tarjan找到割边,再dfs将 ...

  7. gradle项目对比maven项目的目录架构以及对gradle wrapper的理解

    转载请注明出处: 1.使用 idea 搭建 gradle项目 注意 type 选择 gradle 以及 language 选择 grooy                       搭建后的项目架构 ...

  8. KMP模式匹配 学习笔记

    功能 能在线性时间内判断字符串\(A[1~N]\)是否为字符串\(B[1~M]\)的子串,并求出字符串\(A\)在字符串\(B\)中各次出现的位置. 实现 1.对字符串\(A\)进行自我"匹 ...

  9. SpringBoot 自定义注解 实现多数据源

    SpringBoot自定义注解实现多数据源 前置学习 需要了解 注解.Aop.SpringBoot整合Mybatis的使用. 数据准备 基础项目代码:https://gitee.com/J_look/ ...

  10. 监控 HTTP 服务器的状态(测试返回码)shell脚本

    #!/bin/bash # 监控 HTTP 服务器的状态(测试返回码) # 设置变量,url为你需要检测的目标网站的网址(IP 或域名),比如百度 url=http://http://183.232. ...