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

DevExpress WinForms中文教程:Data Grid - 如何添加或删除行?

本教程介绍DevExpress WinForm的Data Grid控件UI元素和API,它们使您和最终用户能够添加或删除数据行。您将首选学习如何启用内置的数据导航器,然后学习如何使用Microsoft Outlook启发的New Item行添加新记录。最后教程将向您展示基本的API,它使您能够添加或删除行,并在最终用户使用网格控件的UI添加记录时初始化字段值。

P.S:DevExpress WinForms拥有180+组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜任!

获取DevExpress WinForms v24.1正式版下载(Q技术交流:532598169)

激活和使用数据导航器

首先您可以运行最终用户使用嵌入式导航器控件添加和删除行,为此设置GridControl.UseEmbeddedNavigator属性为true。

DevExpress WinForms中文教程图集

导航器出现在左下角,运行应用程序,看看使用导航器可以做些什么,单击Append按钮添加一行。

DevExpress WinForms中文教程图集

初始化单元格值之后,可以使用End Edit按钮发布更改。

DevExpress WinForms中文教程图集

注意,还有一个Cancel Changes按钮可用。要删除行,只需单击Delete按钮。

启用并使用新建项目行

添加新行的另一种方法是使用New Item行,要启用它,展开GridView.OptionsView并设置GridOptionsView.NewItemRowPosition属性为NewItemRowPosition.Top。

DevExpress WinForms中文教程图集

New Item行现在显示在网格的顶部,运行应用程序,单击行,初始化单元格值并发布更改,这可以通过移动行焦点或在聚焦最后一行单元格时按ENTER来完成。

DevExpress WinForms中文教程图集

可以使用ESCAPE键取消添加新行,如果正在编辑单元格,则按下第一个键将放弃对该单元格的更改,再次按ESCAPE键删除整行。

使用相同的属性,可以将New Item行定位在所有其他记录之后。以类似的方式,您可以开始编辑这一行,然后发布更改来创建新记录。

在代码中添加和删除行

为了方便最终用户输入,您可能希望在新添加的行中预定义单元格值。为此,处理ColumnView.InitNewRow事件,每当使用DevExpress WinForms网格控件的UI添加一行时,该事件就会触发。使用事件的InitNewRowEventArgs.RowHandle参数来识别要添加的行,并将当前日期和时间写入单元格。

C#

private void gridView1_InitNewRow(object sender, InitNewRowEventArgs e) {
GridView view = sender as GridView;
view.SetRowCellValue(e.RowHandle, "Date", DateTime.Now.Date);
}

VB.NET

Private Sub gridView1_InitNewRow(ByVal sender As Object, ByVal e As InitNewRowEventArgs)
Dim view As GridView = TryCast(sender, GridView)
view.SetRowCellValue(e.RowHandle, "Date", DateTime.Now.Date)
End Sub

您可能还需要为添加或删除行提供自定义UI,例如本例中的Add Row功能区按钮。在Click事件处理程序中,调用视图的调用View的GridView.AddNewRow方法。类似地,您可以添加Delete Row按钮,其Click处理程序应该调用ColumnView.DeleteRow方法来删除当前聚焦的行。

C#

private void bAddRow_ItemClick(object sender, ItemClickEventArgs e) {
gridView1.AddNewRow();
}private void bRemoveRow_ItemClick(object sender, ItemClickEventArgs e) {
gridView1.DeleteRow(gridView1.FocusedRowHandle);
}

VB.NET

Private Sub bAddRow_ItemClick(ByVal sender As Object, ByVal e As ItemClickEventArgs)
gridView1.AddNewRow()
End SubPrivate Sub bRemoveRow_ItemClick(ByVal sender As Object, ByVal e As ItemClickEventArgs)
gridView1.DeleteRow(gridView1.FocusedRowHandle)
End Sub

运行应用程序并单击Add Row按钮,您可以看到Date字段值是用当前日期自动初始化的,现在关注新添加的行并单击Delete按钮来删除它。

相关文章:

DevExpress WinForms中文教程:Data Grid - 如何添加或删除行?

本教程介绍DevExpress WinForm的Data Grid控件UI元素和API,它们使您和最终用户能够添加或删除数据行。您将首选学习如何启用内置的数据导航器,然后学习如何使用Microsoft Outlook启发的New Item行添加新记录。最后教程将向您展示基本的API,它…...

u盘格式化后数据能恢复吗?2024年Top4恢复神器来帮忙

在这个电脑和手机满天飞的时代,U盘是我们用来存东西和传文件的得力助手,特别重要。但是,有时候U盘可能会不小心被格式化了,里面的重要文件就不见了。那么,U盘格式化后的数据还能恢复吗?当然可以。今天会告诉…...

深度学习·Argparse

Argparse 命令行选项、参数和子命令解析器 ArgumentParser 命令行传参数->解析参数->获得对应参数 初始化:parser argparse.ArgumentParser(descriptionxxx)添加命令行参数: parser.add_argument("--training_filepath", typestr, he…...

制造企业为何需要PLM系统?PLM系统解决方案对制造业重要性分析

制造企业为何需要PLM系统?PLM系统解决方案对制造业重要性分析 新华社9月23日消息,据全国组织机构统一社会信用代码数据服务中心统计,我国制造业企业总量突破600万家。数据显示,2024年1至8月,我国制造业企业数量呈现稳…...

http协议中的header详细讲解

http协议中的header详细讲解 HTTP 协议和 TCP/IP 协议族内的其他众多的协议相同,用于客户端和服务器之间的通信。 请求访问文本或图像等资源的一端称为客户端,而提供资源响应的一端称为服务器端。 HTTP 协议规定,请求从客户端发出&#xf…...

探索后量子安全:基于格加密技术的未来密码学展望

在信息技术日新月异的今天,量子计算作为下一代计算技术的代表,正逐步从理论走向实践。量子计算的出现对现有的加密体系构成了严重威胁,尤其是基于大数分解和离散对数难题的传统密码学(如RSA和Diffie-Hellman协议)。为了…...

WPF之UI进阶--完整了解wpf的控件和布局容器及应用

前面三篇有关WPF的基础介绍,分别介绍了wpf与winform的异同,wpf的事件生成和使用以及数据绑定。但我们还缺乏一副好的“皮囊”,所以从这篇开始我们来开始学习wpf的UI相关的内容,首当其冲的就是布局容器。 其实我们知道,…...

unity一键注释日志和反注释日志

开发背景:游戏中日志也是很大的开销,虽然有些日志不打印但是毕竟有字符串的开销,甚至有字符串拼接的开销,有些还有装箱和拆箱的开销,比如Debug.Log(1) 这种 因此需要注释掉,当然还需要提供反注释的功能&am…...

VBA数据库解决方案第十五讲:Recordset集合中单个数据的精确处理

《VBA数据库解决方案》教程(版权10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法…...

甄选范文“论软件需求管理”,软考高级论文,系统架构设计师论文

论文真题 软件需求管理是一个对系统需求变更了解和控制的过程。需求管理过程与需求开发过程相互关联,初始需求导出的同时就要形成需求管理规划,一旦启动了软件开发过程,需求管理活动就紧密相伴。 需求管理过程中主要包含变更控制、版本控制、需求跟踪和需求状态跟踪等4项活…...

Android Studio Dolphin 中Gradle下载慢的解决方法

我用的版本Android Studio Dolphin | 2021.3.1 Patch 1 1.Gradle自身的版本下载慢 解决办法:修改gradle\wrapper\gradle-wrapper.properties中的distributionUrl 将https\://services.gradle.org/distributions为https\://mirrors.cloud.tencent.com/gradle dis…...

Excel实现省-市-区/县级联

数据准备 准备省份-城市映射数据,如下: 新建sheet页,命名为:省-市数据源,然后准备数据,如下所示: 准备城市-区|县映射数据,如下: 新建sheet页,命名为&#x…...

【优化代码结构】函数的参数归一化

某些封装的函数,其参数具有多样性,会导致函数中会增加非常多的分支,比如下面这个 format 函数有如下几种参数方式,其中 formatter 会有很多种情况 date:日期对象formatter: ‘date’:格式化日期…...

CSS中height设置100vh和100%的区别

文章目录 CSS中height设置100vh和100%的区别一、引言二、高度设置的区别1、100%1.1、父元素高度固定1.2、父元素高度未定义 2、100vh2.1、视口高度2.2、不受父元素限制 三、总结 CSS中height设置100vh和100%的区别 一、引言 在前端开发中,我们经常需要设置元素的高…...

红米k60至尊版工程固件 MTK芯片 资源预览 刷写说明 与nv损坏修复去除电阻图示

红米k60至尊版机型代码为:corot。 搭载了联发科天玑9200+处理器。此固件mtk引导为MT6985。博文将简单说明此固件的一些特点与刷写注意事项。对于NV损坏的机型。展示修改校验电阻的图示。方便改写参数等 通过博文了解 1💝💝💝-----此机型工程固件的资源刷写注意事项 2…...

QEMU使用Qemu-Guest-Agent传输文件、执行指令等

简介 之前介绍过qemu传输文件,使用的挂载 / samba方式 :Qemu和宿主机不使用外网进行文件传输。 这是一种方式,这里还有另一种方式:使用Qemu-Guest-Agent,后面简称qga。 官网介绍:https://www.qemu.org/d…...

【漏洞复现】金和OA C6 GeneralXmlhttpPage.aspx Sql注入漏洞

免责声明: 本文旨在提供有关特定漏洞的信息,以帮助用户了解潜在风险。发布此信息旨在促进网络安全意识和技术进步,并非出于恶意。读者应理解,利用本文提到的漏洞或进行相关测试可能违反法律或服务协议。未经授权访问系统、网络或应用程序可能导致法律责任或严重后果…...

复数表示的电场

Exm加是复振幅,这是用复数表示电场,并提取只与空间有关的项复振幅就是复数表示电场,且把与空间xyz有关的量提取出来 经过验证实数E0cos(wtδx)对t求导,等于E0e^j(wtδx)对t求导再取实部 实数表示电磁波cos…...

常用快捷键整理

用加粗标注的是我个人使用时常用的,其实这个全凭个人喜好,大家可以熟悉一下自己喜欢的,都多试试,把觉得有用的记一下,多使用,后续写代码效率就会提高一些) 常用 VS 运行调试程序快捷键 编译 . 编译程序&a…...

【Transformer】长距离依赖

在自然语言处理(NLP)中,长距离依赖(Long-Range Dependencies)指的是在文本中相隔较远的两个或多个元素之间的依赖关系。这些依赖关系可以是语法上的,也可以是语义上的。例如,在句子中&#xff0…...

Tinke:免费开源NDS游戏资源提取工具,轻松解密任天堂DS游戏文件

Tinke:免费开源NDS游戏资源提取工具,轻松解密任天堂DS游戏文件 【免费下载链接】tinke Viewer and editor for files of NDS games 项目地址: https://gitcode.com/gh_mirrors/ti/tinke 你是否曾好奇NDS游戏内部藏着什么秘密?想要提取…...

Claude AI代码扩展工具:在IDE中无缝集成智能编程助手

1. 项目概述:一个为Claude AI设计的代码扩展工具最近在折腾AI编程助手的时候,发现了一个挺有意思的项目——dliedke/ClaudeCodeExtension。这玩意儿说白了,就是一个专门为Claude(就是Anthropic家那个AI)设计的代码扩展…...

【研报 A114】2026人工智能时代企业技能管理数字化转型白皮书:AI驱动全生命周期闭环,迭代速度提升70%

摘要:智能汽车产业加速升级,车企正面临员工技能迭代的核心挑战,AI 原生技能管理成为转型关键。依托生成式 AI、多智能体等技术,全新的技能管理体系贯穿技能梳理、培养、评估、应用全生命周期,将技能转化为车企的核心无…...

Windows 10 PL2303驱动修复终极指南:3种方案解决串口设备兼容性问题

Windows 10 PL2303驱动修复终极指南:3种方案解决串口设备兼容性问题 【免费下载链接】pl2303-win10 Windows 10 driver for end-of-life PL-2303 chipsets. 项目地址: https://gitcode.com/gh_mirrors/pl/pl2303-win10 PL2303驱动修复方案是解决Windows 10系…...

taotoken的token plan套餐让长期使用的成本预测变得简单

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Taotoken 的 Token Plan 套餐让长期使用的成本预测变得简单 对于将大模型 API 深度集成到业务流程中的团队而言,成本管…...

开发AI智能体时利用Taotoken统一调度多模型提升任务完成率

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 开发AI智能体时利用Taotoken统一调度多模型提升任务完成率 在构建需要处理复杂、多模态任务的AI智能体时,单一模型的能…...

从零构建大模型推理引擎:KV缓存、算子融合与量化优化实战

1. 项目概述:从零理解大模型推理引擎如果你正在关注大语言模型(LLM)的实际应用,特别是如何让这些动辄数百亿参数的“庞然大物”在你的本地机器或服务器上高效地跑起来,那么你很可能已经听说过“推理引擎”这个词。anik…...

Python+OpenCV+PyQt5+SVM实现车牌识别系统(源码)

目录 一、项目背景 二、技术介绍 三、功能介绍 四、 代码设计 五、系统实现 一、项目背景 随着我国城市化进程的不断加快,机动车保有量呈现持续快速增长态势。据公安部统计,2024年全国机动车保有量已突破4.5亿辆,其中汽车占比超过80%。…...

抖音无水印视频下载终极指南:5分钟快速掌握免费批量下载技巧

抖音无水印视频下载终极指南:5分钟快速掌握免费批量下载技巧 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback…...

解放双手:D3KeyHelper让暗黑3游戏操作变得前所未有的简单

解放双手:D3KeyHelper让暗黑3游戏操作变得前所未有的简单 【免费下载链接】D3keyHelper D3KeyHelper是一个有图形界面,可自定义配置的暗黑3鼠标宏工具。 项目地址: https://gitcode.com/gh_mirrors/d3/D3keyHelper 还在为暗黑3中繁琐的技能循环和…...