devexpress 中advBandedGridView内容自动换行和调整自适应行高

首先是自动换行,可以创建一个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内容自动换行和调整自适应行高的更多相关文章
- C# 设置Excel数据自适应行高、列宽的2种情况
Excel表格中,由于各种数据的复杂性,可能存在单元格中的数据字号大小.数据内容长度不一而出现,列宽过宽.过窄或者行高过大.过小的问题.常见的解决方法是调整行高.列宽.在Microsoft Excel ...
- Java 设置Excel自适应行高、列宽
在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定 ...
- iOS自适应行高方法及问题
最近一周被项目的动态高度虐的很惨,感觉浪费了很多时间,但是值得高兴的是对动态高度的使用掌握了好多方法,并且知道了方法之间的区别和优缺点. 1.最常用的: UITableView+FDTemplateL ...
- 在iOS中如何正确的实现行间距与行高
最近准备给 VirtualView-iOS 的文本元素新增一个 lineHeight 属性,以便和 VirtualView-Android配合时能更精确的保证双平台的一致性.面向 Google 以及 ...
- element UI 调整表格行高
使用element UI的table默认属性,绘制表格如下: 该表格的行高太大了,于是想调小一些. 查看官网的文档,table有几个属性, row-style:行的 style 的回调方法,也可以使用 ...
- OAF 中对文字实现html效果及对超级长文本实现默认换行,对只读的messageTextInput中的内容自动换行
今天遇到一个需求,客户注册页面客户化了一个超级长的注册须知,内容很多.但是样式相对又要做起来好看点. 注册须知的内容使用多个message拼接而成. 老大说rawText支持html样式,于是我想到了 ...
- DevExpress中XtraGrid控件对GridView每行的颜色设置 zt
改变行颜色 private void GridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArg ...
- rmReport 自适应行高(自动行高)
这个问题 1.先中主项数据--属性--stretched(伸展):true 选中主项数据中的所有列--属性--其他属性--自动折行 --伸展
- 调整UILabel行高间距并返回自定义宽高度
// 获取label文字 NSString *labelString = @"XXXXXXXXXXXXXX"; // 设置自定义宽度或高度 CGSize labelSize = C ...
- ui-grid样式,表格高度自适应行高,没有滚动条,去掉表头
前后端设置:
随机推荐
- C++ 由快排学习到的的随机数等知识
起: 力扣的912题 数组排序 ,想着先用快速排序来写写,在实际用c++编写的时候,有一些之前没注意到的细节问题造成了一些麻烦. 912. 排序数组 - 力扣(LeetCode) 快排思想 每次以数组 ...
- flink-cdc实时同步mysql数据到elasticsearch
本文首发于我的个人博客网站 等待下一个秋-Flink 什么是CDC? CDC是(Change Data Capture 变更数据获取)的简称.核心思想是,监测并捕获数据库的变动(包括数据 或 数据表的 ...
- ssh访问控制,阻断异常IP,防止暴力破解
文章转载自:https://mp.weixin.qq.com/s/oktVy09zJAAH_MMKdXjtIA 由于业务需要将Linux服务器映射到公网访问,SSH 端口已经修改,但还是发现有很多IP ...
- 在 K8S 上部署以 mysql 数据库作为后端存储的单机版 nacos
Nacos 被用于: 服务发现 微服务配置信息管理 部署 nacos 时,需要用到如下两个镜像,这两个镜像均来自于 nacos 官方发布到 docker hub 的镜像, nacos/nacos-se ...
- NSIS自定义目录选择页面制作之安装…
在nsis制作自定义界面中,目录选择页面个人感觉最为繁琐,因为该界面不仅涉及到界面控件的创建,还要涉及到控件消息传递和状态改变时的回调函数通告. 迅雷界面为例: 其中安装目录中的8盘符,在本机中并不存 ...
- jq判断页面滚动条进行样式修改
$(window).scroll(function(){//窗口的滚动条 if($(window).scrollTop()>100){ //垂直滚动条钓offset 大于90时. $(" ...
- 220403 考试爆炸记 (T1T2)
T1 最大约数和 先放一下我考时的代码.(没想到能A过洛谷的数据,可能是洛谷的数据有点弱) #include<bits/stdc++.h> using namespace std; int ...
- 巧用VBA实现:基于多个关键词模糊匹配Excel多行数据
在用Excel处理实际业务中,我们会碰到如下场景: 1.从一堆人名中找到包含某些关键字的名字: 2.从银行流水文件中根据[备注]字段找到包含某些关键字的,统一识别为[手续费业务]等. 这本质说的都是一 ...
- Java学习之路:HelloWorld
2022-10-08 16:13:57 HelloWorld 1. 随便新建一个文件夹,存放代码 2. 新建一个Java文件 文件后缀名为.java hello.java 注意:系统没有显示后 ...
- 【强烈推荐】用glob库的一行命令显著加速批量读取处理数据
在我们气象领域,对数据进行批处理随处可见,尤其是在处理模式数据的时候.为了能让这个过程加速,很多大佬们提出了不同的方法,比如使用numba库进行计算.使用dask库进行并行等等,都是非常好的加速手段. ...