C# gridlookupedit选中内容重复还原操作

private void gridView1_ValidatingEditor(object sender, DevExpress.XtraEditors.Controls.BaseContainerValidateEditorEventArgs e)

{

var _Gdv = gridView1;

var _currentRowData = _Gdv.GetFocusedDataRow();

if (_currentRowData == null) return;

复制代码
var view = gridView1;

if (_Gdv.ActiveEditor is GridLookUpEdit)
{
    if (_Gdv.FocusedColumn.View.EditingValue == null) return;

    var _Edit = _Gdv.ActiveEditor as GridLookUpEdit;
    var _SelectRowData = _Edit.Properties.View.GetFocusedDataRow();
    if (_SelectRowData == null) return;

    if (_Edit.Properties.Name == "glue_hzyy") // 会诊医院
    {
    // 记录旧值用于回滚
        var oldValue = _currentRowData["HZYYBM"];
        _currentRowData["HZYYBM"] = _SelectRowData["ITEM_CODE"];

        // 检查是否存在同一医院的统一会诊收费等级重复
        if (CheckDuplicateHospitalGrade(_currentRowData))
        {
          // 要加上这句,可能有部分操作会导致数据又刷新成新数据
            _currentRowData["HZYYBM"] = oldValue;
           _Edit.EditValue= oldValue;
           _Edit.IsModified=false;
           e.Value=oldValue;
		  MessageBox.Show("同一医院的同一会诊收费等级,只能存在一份!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        }
        else // 不重复直接赋值名称
        {
            _currentRowData["HZYYMC"] = _SelectRowData["ITEM_NAME"];
        }
    }
}

}

相关推荐
程序猿追11 小时前
HarmonyOS 6 上做个极简浏览器:Web 组件 + 前进后退 + 加载进度
前端·华为·harmonyos
沐沐师11 小时前
Mybatis 框架教程
前端
三天不学习11 小时前
Tailwind CSS 快速入门(2026 版):从 v4 零配置上手,到「该不该用、怎么用好」的选型实战
前端·css·tailwind
明月_清风11 小时前
面对陌生的 GitHub 项目无从下手?这 4 个网站帮你快速读懂源码
前端·后端·github
zyseo812 小时前
谷歌SEO 站内搜索优化实战:把站内搜索词变成关键词金矿
java·服务器·数据库
王大傻092812 小时前
堆叠注入(Stacked Queries Injection)详解:原理、利用与防御
服务器·网络·数据库·web安全·网络安全
htzyl20612 小时前
前端阶梯——第九章、颜色、文本与背景
前端·css
bigcarp12 小时前
安卓模拟器MUMU+tcpdump抓包Socket协议流量
服务器·网络·tcpdump
是个西兰花12 小时前
TCP套接字编程实战:从服务器搭建到多进程处理
服务器·网络协议·tcp/ip
zhangzeyuaaa12 小时前
Ruby `require` 完全指南:从 `$LOAD_PATH` 到 `require_relative`
服务器·前端·ruby