当前位置: 首页 > news >正文

Cells 单元

Goto Data Grid 数据网格

Cells 单元

Content Alignment 内容对齐

显示数值的数据网格单元格会将其内容向右对齐。显示其他类型数据的单元格将其内容向左排列。若要更改单元格内容对齐方式,请处理 ColumnView.RowCellDefaultAlignment 事件。

在这里插入图片描述

Selection Modes 选择模式

使用默认 Grid 设置,用户只能选择整行。将 GridOptionsSelection.MultiSelectMode 属性设置为 GridMultiSelectMode.CellSelect 值,以允许用户选择单个单元格。在此模式下,用户可以使用“Ctrl”和“Shift”键一次选择多个单元格。
在这里插入图片描述

  • GridView.SelectCell、GridView.SelectCells — 允许您选择单个单元格和/或单元格区域的方法。
  • GridView.GetSelectedCells — 返回所选单元格或这些单元格的父 Grid 列。

Display Text and Cell Value 显示文本和单元格值

单元格值是存储在数据源中的值。单元格的显示文本是向用户显示的值。当数据网格对数据进行排序或筛选时,它会处理单元格值(而不是显示文本)。您可以改为按单元格显示值对控件进行排序和筛选数据。为此,请使用 GridColumn.SortMode 和 GridColumn.FilterMode 属性。

某些 Grid 功能(例如,格式化)会改变向最终用户显示实际单元格值的方式。若要在不更改基础值的情况下手动修改单元格的显示文本,请处理 ColumnView.CustomColumnDisplayText 事件。在以下示例中,如果属于 “Length” 列的单元格的值大于 20,则不显示任何内容。

gridView.CustomColumnDisplayText += (sender, e) => {if(e.Column.FieldName == "Length") {double val = (double)e.Value;if (val > 20)e.DisplayText = string.Empty;}};

How to Place an Image in a Grid Cell 如何在网格单元格中放置图像

根据您的任务,您可以使用不同的技术在 Data Grid 单元格中显示图像(字形、图标、图片)。请注意,您不能使用 GridColumn.CellAppearance.Image 属性(数据网格忽略此设置)。

Editor Context Images 编辑器上下文图像

RepositoryItemTextEdit.ContextImageOptions 组允许您将光栅或矢量图标分配给 RepositoryItemTextEdit 对象。如果需要为所有列单元格显示相同的图标,并保持单元格文本可编辑,请使用此方法。

private void gridView1_CustomRowCellEdit(object sender, CustomRowCellEditEventArgs e)
{string fileName = FileUtil.getFileName("Cell");string filePath = DevExpress.Utils.FilesHelper.FindingFileName(Application.StartupPath, "\\img\\" + fileName, false);RepositoryItemTextEdit textEdit = new RepositoryItemTextEdit();textEdit.ContextImageOptions.Image = Image.FromFile(filePath); //Properties.Resources.Cell;if (e.Column.FieldName == "cash_opera" && e.CellValue.ToString() == "00828"){e.RepositoryItem = textEdit;}
}

在这里插入图片描述

Check Edit with Images 选中 Edit with Images

如果需要将布尔单元格值替换为图标,请为此列分配 Check Edit 编辑器。编辑器的 ImageOptions 属性允许您为“Checked”和“Unchecked”编辑器状态设置图标。您还需要将编辑器的 CheckBoxOptions.Style 属性设置为 “custom”。

view.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;
view.OptionsSelection.MultiSelect = true;
view.OptionsSelection.CheckBoxSelectorColumnWidth = 45;
view.OptionsSelection.ShowCheckBoxSelectorInColumnHeader = DevExpress.Utils.DefaultBoolean.False;RepositoryItemCheckEdit checkEdit = gridControl1.RepositoryItems.Add("CheckEdit") as RepositoryItemCheckEdit;
checkEdit.ImageOptions.ImageChecked = Image.FromFile(FileUtil.getFilePath("勾选"));
checkEdit.ImageOptions.ImageUnchecked = Image.FromFile(FileUtil.getFilePath("取消"));
checkEdit.CheckBoxOptions.Style = DevExpress.XtraEditors.Controls.CheckBoxStyle.Custom;
gridView1.Columns["IsRead"].ColumnEdit = checkEdit;
gridControl1.RepositoryItems.Add(checkEdit);

Image Combo Box 图像组合框

如果单元格显示要替换为图像的枚举值,请使用链接到 ImageList 或 DevExpress 图像集合的 ImageComboBoxEdit 编辑器。

/** 添加未绑定列*/
GridColumn unboundColumn3 = gridView1.Columns.AddField("Severity");
unboundColumn3.UnboundDataType = typeof(System.Object);
unboundColumn3.Visible = true;
RepositoryItemImageComboBox imageCombo = gridControl1.RepositoryItems.Add("ImageComboBoxEdit") as RepositoryItemImageComboBox;
DevExpress.Utils.ImageCollection images = new DevExpress.Utils.ImageCollection();
images.AddImage(Image.FromFile(FileUtil.getFilePath("Minor.png")));
images.AddImage(Image.FromFile(FileUtil.getFilePath("Moderate.png")));
images.AddImage(Image.FromFile(FileUtil.getFilePath("Severe.png")));
imageCombo.SmallImages = images;
imageCombo.Items.Add(new ImageComboBoxItem("Minor", (short)1, 0));
imageCombo.Items.Add(new ImageComboBoxItem("Moderate", (short)2, 1));
imageCombo.Items.Add(new ImageComboBoxItem("Severe", (short)3, 2));
imageCombo.GlyphAlignment = DevExpress.Utils.HorzAlignment.Center;
gridView1.Columns["Severity"].ColumnEdit = imageCombo;
gridControl1.RepositoryItems.Add(imageCombo);

Conditional Formatting 条件格式

当您设置了静态图标来可视化不同的值或值范围时,建议使用此方法。在这种情况下,图标显示在单元格值旁边。

外观和条件格式

Fill Cells with Images 用图像填充单元格

使用 PictureEdit 编辑器用图像填充整个 Grid 单元格。

/** 添加未绑定列 用图像填充单元格*/
GridColumn unboundColumn4 = gridView1.Columns.AddField("Picture");
unboundColumn4.UnboundDataType = typeof(System.Object);
unboundColumn4.Visible = true;
unboundColumn4.Caption = "图像填充单元格";
RepositoryItemPictureEdit pictureEdit = gridControl1.RepositoryItems.Add("PictureEdit") as RepositoryItemPictureEdit;
pictureEdit.SizeMode = PictureSizeMode.Zoom;
pictureEdit.NullText = " ";
gridView1.Columns["Picture"].ColumnEdit = pictureEdit;
gridControl1.RepositoryItems.Add(pictureEdit);private void gridView1_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
{if ((e.Column.FieldName == "Picture") && e.IsGetData){Image image = null;var cash_opera = (string)((DataRowView)e.Row)["cash_opera"];if (cash_opera.Equals("01828")){image = Image.FromFile(FileUtil.getFilePath("Cell.bmp"));}else{image = Properties.Resources.Cell;}e.Value = image;}
}

HTML Formatting HTML 格式

使用 Image 标签将图像嵌入到单元格中。请注意,此方法使单元格不可编辑。

GridColumn unbound = new GridColumn();
unbound.UnboundDataType = typeof(string);
unbound.FieldName = "Html";
unbound.Visible = true;
unbound.Caption = "HTML";
gridView1.Columns.Add(unbound);ImageCollection imageCollection1 = new ImageCollection();RepositoryItemHypertextLabel htLabel = new RepositoryItemHypertextLabel();
htLabel.HtmlImages = imageCollection1;
gridControl1.RepositoryItems.Add(htLabel);
unbound.ColumnEdit = htLabel;private void gridView1_CustomUnboundColumnData(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDataEventArgs e)
{if (e.Column.FieldName == "Html"){e.Value = "<a href='https://www.google.com'>Google</a>";}
}

Cell Merging Cell 合并

在 GridView 和 BandedGridView 视图中,具有相同值的单元格可以自动合并。请注意,合并依赖于单元格值,而不是单元格显示文本。

合并的单元格存在以下限制:

  • 最终用户无法编辑合并的单元格。
  • 行多选处于禁用状态。
  • 合并的行无法显示预览部分。如果 GridOptionsView.ShowPreview 选项设置为 true,则无论 GridOptionsView.AllowCellMerge 属性的值如何,都无法合并具有相同值的相邻单元格。
  • 忽略聚焦行和单元格的外观设置(GridViewAppearances.FocusedRow 和 GridViewAppearances.FocusedCell 属性)。
  • 用于绘制偶数行和奇数行的外观设置将被忽略(GridViewAppearances.EvenRow 和 GridViewAppearances.OddRow 属性)。

Related API 相关 API

  • GridOptionsView.AllowCellMerge — 为整个视图启用自动单元格合并。
  • OptionsColumn.AllowMerge — 仅对此列启用自动单元格合并。此属性优先于全局 GridOptionsView.AllowCellMerge 设置。
  • GridView.CellMerge — 此事件允许您实施自定义算法并手动合并单元格。
    在这里插入图片描述
// Trim e-mail addresses
private void gridView1_CustomColumnDisplayText(object sender, DevExpress.XtraGrid.Views.Base.CustomColumnDisplayTextEventArgs e) {if (e.Column == colCreatorID) {string email = e.DisplayText;string domain = email.Substring(email.IndexOf('@') + 1);e.DisplayText = domain;}
}// Custom cell merge
private void gridView1_CellMerge(object sender, DevExpress.XtraGrid.Views.Grid.CellMergeEventArgs e) {GridView view = sender as GridView;if(view == null) return;if (e.Column == colCreatorID) {string text1 = view.GetRowCellDisplayText(e.RowHandle1, colCreatorID);string text2 = view.GetRowCellDisplayText(e.RowHandle2, colCreatorID);e.Merge = (text1 == text2);e.Handled = true;}
}

Access Grid Cells in Code 在代码中访问网格单元格

  • ColumnView.GetRowCellDisplayText 和 ColumnView.GetRowCellValue
    返回单元格值并显示任何网格单元格的文本。

  • ColumnView.GetFocusedRowCellDisplayText 和 ColumnView.GetFocusedRowCellValue
    返回单元格值并显示属于当前焦点行的任何单元格的文本。

  • ColumnView.FocusedRowHandle 和 ColumnView.FocusedColumn
    设置聚焦的行和列以选择所需的单元格。

  • ColumnView.CellValueChanging 和 ColumnView.CellValueChanged
    这些事件在响应最终用户对单元格值的修改时触发。

相关文章:

Cells 单元

Goto Data Grid 数据网格 Cells 单元 Content Alignment 内容对齐 显示数值的数据网格单元格会将其内容向右对齐。显示其他类型数据的单元格将其内容向左排列。若要更改单元格内容对齐方式&#xff0c;请处理 ColumnView.RowCellDefaultAlignment 事件。 Selection Modes 选…...

2024/11/2 安卓创建首页界面

‌Gradle 8.7 bin‌是指Gradle 8.7版本的二进制包&#xff0c;通常以.zip或.tar.gz格式提供。这个二进制包包含了运行Gradle所需的所有文件&#xff0c;用户可以直接下载并解压使用&#xff0c;无需从源代码编译。 首先了解最常用的布局 线性布局&#xff08;从上到下&#x…...

SpringSession源码分析

默认对常规Session的理解和使用&#xff0c;如何使用Set-Cookie。 Maven库 常见的spring-session-data-redis依赖spring-session-core <dependency><groupId>org.springframework.session</groupId><artifactId>spring-session-core</artifactId&…...

IIC

IIC 目录 IIC BH1750型号的光照传感器 IIC通信协议 iic物理层 IIC软件层协议 -- 那么一主多从&#xff0c;怎么选中与指定的从机通信呢&#xff1f; 从机设备地址 -- 从手册中查看 IIC 写操作 IIC 读操作 硬件IIC和模拟 IIC 使用 模拟 IIC 使用 &#xff01;&…...

LLM Observability: Azure OpenAI (一)

作者&#xff1a;来自 Elastic Vinay Chandrasekhar•Andres Rodriguez 我们很高兴地宣布 Azure OpenAI 集成现已全面上市&#xff0c;它提供了对 Azure OpenAI 服务性能和使用的全面可观察性&#xff01;另请参阅本博客的第 2 部分 虽然我们已经提供了对 LLM 环境的可视性一段…...

qt QBrush详解

1、概述 QBrush是Qt框架中的一个基本图形对象类&#xff0c;它主要用于定义图形的填充模式。QBrush可以用于填充如矩形、椭圆形、多边形等形状&#xff0c;也可以用于绘制背景等。通过QBrush&#xff0c;可以设置填充的颜色、样式&#xff08;如实心、渐变、纹理等&#xff09…...

Excel函数CUnique连接合并指定区域的唯一值

上一篇文章向大家介绍了如何使用VBA在低版本Excel中创建unique函数的方法&#xff0c;今天我跟大家分享一下如何使用函数连接指定区域的唯一值&#xff0c;也就是将unique函数获取的唯一值连接合并成一个&#xff0c;并指定连接符。 同样&#xff0c;我们需要先创建一个自定义的…...

机械革命屏幕设置为RGB

机械革命屏幕设置为RGB 如何设为机械革命屏幕显示为RGB如何设置1.win菜单下输入“显卡控制中心”2.选择显示器3.设置为RGB4.饱和度大家设为自己舒服的就行5.调整亮度 参考来源 如何设为机械革命屏幕显示为RGB 之前买的显示器&#xff0c;感觉调成sRGB看起来非常舒服。就想着是…...

开源项目-投票管理系统

哈喽,大家好,今天主要给大家带来一个开源项目-投票管理系统 投票管理系统主要有首页,发起投票,管理投票,参与投票,查看投票等功能 首页 为用户提供了一键导航到各个功能模块的便捷途径。 新增投票 用户可以在此轻松创建新的投票活动,设置投票主题、选项等信息。 管理…...

LeetCode 104.二叉树的最大深度

题目描述 给定一个二叉树 root &#xff0c;返回其最大深度。 二叉树的 最大深度 是指从根节点到最远叶子节点的最长路径上的节点数。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;3 示例 2&#xff1a; 输入&#xff1a;root [1…...

Android启动流程_Init阶段

前言 本文将会介绍 Android 启动流程&#xff0c;将基于 Android 10 代码逻辑介绍原生启动过程。 bootloader 上电 -> 加载 recovery 镜像或者 boot 镜像 -> linux kernel 启动 -> 加载 init 进程 -> 加载 zygote 进程 -> systemserver 进程 -> 系统启动 …...

萤火虫算法优化BILSTM神经网络多输入回归分析

目录 LSTM的基本定义 LSTM实现的步骤 BILSTM神经网络 代码 结果分析 展望 完整代码下载:的MATALB代码(代码完整,数据齐全)资源-CSDN文库 https://download.csdn.net/download/abc991835105/88755564 背影 bp神经网络是一种成熟的神经网络,应用非常广,本文用萤火虫算法…...

在线QP(QuotedPrintable)编码解码工具

具体前往&#xff1a;Quoted-printable在线编码解码工具-将给定文本编码为:可打印字符引用编码(简称&#xff1a;QP编码)&#xff0c;也支持在线解码...

【已解决】cra 配置路径别名 @ 后,出现 ts 报错:找不到模块“@/App”或其相应的类型声明。ts(2307)

cra 配置路径别名 后&#xff0c;出现 ts 报错&#xff1a;找不到模块“/App”或其相应的类型声明。ts(2307) 然后可以在 tsconfig.json 中配置 baseUrl 和 paths &#xff1a; {"compilerOptions": {"target": "es5","lib": [&quo…...

leetcode-643. 子数组最大平均数 I

文章目录 二 解法2.1 每次都重新计算2.2 使用窗口 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。请你找出平均数最大且 长度为 k 的连续子数组&#xff0c;并输出该最大平均数。任何误差小于 10-5 的答案都将被视为正确答案。二 解法 2.1 每次都重新计算 超时 pu…...

论分布式架构设计及其实现

一、引言 随着互联网用户规模的扩大和需求的多样化&#xff0c;传统的集中式架构已经难以支撑高并发、高可用的系统要求。分布式架构的出现&#xff0c;提供了将计算和存储分布到不同服务器上的解决方案&#xff0c;有效提高了系统的可扩展性和容灾能力。分布式架构目前已广泛…...

基于BP神经网络的手写体数字图像识别

基于BP神经网络的手写体数字图像识别 摘要 在信息化飞速发展的时代&#xff0c;光学字符识别是一个重要的信息录入与信息转化的手段&#xff0c;其中手写体数字的识别有着广泛地应用&#xff0c;如&#xff1a;邮政编码、统计报表、银行票据等等&#xff0c;因其广泛地应用范围…...

QT——串口调试助手

目录 1.QSerialPort类包含了很多有关串口的API 2.实现串口的打开 2.1 方法一&#xff1a;通过函数实现 2.2 方法二&#xff1a;在ui界面右下角实现 3. 实现定时发送 3.1类的私有成员中添加定时器QTimer timer并去构造函数中初始化它 3.2帮助文档中有QTimer类相关的说明 …...

国产操作系统卖疯了!最营收7.84亿,最低1.5亿

最近看各种报道&#xff0c;似乎国产化有提速的绩效&#xff0c;那么既然如此&#xff0c;各个国产操作系统厂商是不是都起飞了呢&#xff1f; 周末闲暇之余&#xff0c;我们来看看各家的营收表现。 银河麒麟2024年1-9月一共卖了多少钱&#xff1f; 前几天中国软件发布了202…...

2024年华为OD机试真题-最小的调整次数-Python-OD统一考试(E卷)

最新华为OD机试考点合集:华为OD机试2024年真题题库(E卷+D卷+C卷)_华为od机试题库-CSDN博客 每一题都含有详细的解题思路和代码注释,精编c++、JAVA、Python三种语言解法。帮助每一位考生轻松、高效刷题。订阅后永久可看,发现新题及时跟新。 题目描述: 有一个特异性的…...

【服务器压力测试】本地PC电脑作为服务器运行时出现卡顿和资源紧张(Windows/Linux)

要让本地PC电脑作为服务器运行时出现卡顿和资源紧张的情况&#xff0c;可以通过以下几种方式模拟或触发&#xff1a; 1. 增加CPU负载 运行大量计算密集型任务&#xff0c;例如&#xff1a; 使用多线程循环执行复杂计算&#xff08;如数学运算、加密解密等&#xff09;。运行图…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

【Linux】Linux 系统默认的目录及作用说明

博主介绍&#xff1a;✌全网粉丝23W&#xff0c;CSDN博客专家、Java领域优质创作者&#xff0c;掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围&#xff1a;SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…...

mac:大模型系列测试

0 MAC 前几天经过学生优惠以及国补17K入手了mac studio,然后这两天亲自测试其模型行运用能力如何&#xff0c;是否支持微调、推理速度等能力。下面进入正文。 1 mac 与 unsloth 按照下面的进行安装以及测试&#xff0c;是可以跑通文章里面的代码。训练速度也是很快的。 注意…...

WebRTC调研

WebRTC是什么&#xff0c;为什么&#xff0c;如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...

车载诊断架构 --- ZEVonUDS(J1979-3)简介第一篇

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…...

怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)

+---------------------------+ | operEntryTbl[] | ← 操作对象池 (对象数组) +---------------------------+ | 0 | 1 | 2 | ... | N-1 | +---------------------------+↓ 初始化时全部加入 +------------------------+ +-------------------------+ | …...

解析“道作为序位生成器”的核心原理

解析“道作为序位生成器”的核心原理 以下完整展开道函数的零点调控机制&#xff0c;重点解析"道作为序位生成器"的核心原理与实现框架&#xff1a; 一、道函数的零点调控机制 1. 道作为序位生成器 道在认知坐标系$(x_{\text{物}}, y_{\text{意}}, z_{\text{文}}…...