JOC快速开发框架按方向复制填充单元格


效果图

在可编辑的单元格右键,可以显示四个快捷填充菜单

JOC快速开发框架按方向复制填充单元格

输入要填充的单元格数

JOC快速开发框架按方向复制填充单元格

点击确定,自动向下复制

JOC快速开发框架按方向复制填充单元格

其他三个方向复制效果相同

 

实现方法

JOC快速开发框架已经集成了右键菜单方法

调用表格的RegisterPopueMenu扩展方法,设置ShowCopyMenu属性为True

C# 全选
// 注册表格右键菜单
_DetailPopMenu = gvDetail_DeviceStopDetails.RegisterPopueMenu();
// 显示快捷复制菜单
_DetailPopMenu.ShowCopyMenu = true;

JOC快速开发框架实践

在JOC快速开发框架中的实例:

C# 全选
Library.GridViewPopupMenu.GridViewCommonPopupMenu _DetailPopMenu;
protected override void InitializeForm()
{
	gvMainData.RegisterPopueMenu();
	_DetailPopMenu = gvDetail_DeviceStopDetails.RegisterPopueMenu();
	_DetailPopMenu.OnCopyValue += _DetailPopMenu_OnCopyValue;
}

添加复制事件,当复制员工编号的时候,把员工姓名也复制一下

C# 全选
// 当复制员工编号时,把员工姓名也复制过去
private void _DetailPopMenu_OnCopyValue(object sender, Library.GridViewPopupMenu.GridViewCommonPopupMenu.CopyEventArgs e)
{
	var view = sender as GridView;
	if (e.Column == colD_DeviceStopDetails_EmpCode)
	{
		switch (e.FillDirection)
		{
			case Library.GridViewPopupMenu.GridViewCommonPopupMenu.CopyDirection.Down:
				{
					var handle = view.FocusedRowHandle;
					var empName = view.GetFocusedRowCellValue(colD_DeviceStopDetails_EmpName);
					for (int i = 1; i <= e.FillCellCount; i++)
					{
						// 超出边界
						if ((handle + i) >= view.RowCount) return;
						view.SetRowCellValue(handle + i, colD_DeviceStopDetails_EmpName, empName);
					}
				}
				break;
			case Library.GridViewPopupMenu.GridViewCommonPopupMenu.CopyDirection.Up:
				{
					var handle = view.FocusedRowHandle;
					var empName = view.GetFocusedRowCellValue(colD_DeviceStopDetails_EmpName);
					for (int i = 1; i <= e.FillCellCount; i++)
					{
						// 超出边界
						if ((handle - i) < 0) return;
						view.SetRowCellValue(handle - i, colD_DeviceStopDetails_EmpName, empName);
					}
				}
				break;
		}
	}
}

只有当窗体处于编辑状态(新增或修改)下,才展示右键复制菜单

C# 全选
// 当编辑状态下才显示复制菜单
protected override void DataStateChanged(FormDataState NewState)
{
	base.DataStateChanged(NewState);
	_DetailPopMenu.ShowCopyMenu = this.IsAddOrEdit;
}

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
张国生
评论列表

发表评论

评论内容
昵称:
关联文章

JOC快速开发框架方向复制填充单元
JOC快速开发框架 表格值改变更新合计
devexpress gridview修改单元值后回车没有立即刷新Summary,必须移动焦点行才行
JOC快速开发平台添加了水印设置
JOC快速开发平台,增加调试监听功能
AGGrid: cellRenderer单元渲染
YES-WEB快速开发框架,.NET WEB开发平台,高效的web项目开发框架
JOC.EFCore使用
YESWEB开发框架 技术要求
YESWin Winform开发框架 代码生成器使用
Winform开发框架日志管理
Xamarin.Forms 复制本地SQLite数据库
DevExpress表格GridControl添加操作列单元添加图片按钮并且实现点击链接URL跳转浏览器
dotnetCampus.UITest.WPF 一个支持中文用例的界面单元测试框架
Winform开发框架简介
Winform开发快速、健壮、解耦的几点建议
JOC.Framework 小程序uni-app添加全局水印
YES-WIN Winform开发框架 日志管理升级指南
YESWin Winform开发框架 业务模块项目模板制作
YESWin Winform开发框架 项目初始化配置并运行