首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在加载DataGridView时阻止SelectionChanged

是指在数据表格加载数据时,阻止用户对数据表格的选中行进行更改。这可以通过以下步骤实现:

  1. 在DataGridView的SelectionChanged事件中添加逻辑判断,判断是否正在加载数据。可以通过设置一个标志位来表示是否正在加载数据。
  2. 在加载数据之前,将标志位设置为true,表示正在加载数据。
  3. 在加载数据完成后,将标志位设置为false,表示加载数据完成。
  4. 在SelectionChanged事件中,判断标志位是否为true,如果是,则取消用户对选中行的更改操作。

以下是一个示例代码:

代码语言:txt
复制
// 定义一个标志位,表示是否正在加载数据
bool isLoadingData = false;

// DataGridView的SelectionChanged事件处理方法
private void dataGridView_SelectionChanged(object sender, EventArgs e)
{
    // 判断是否正在加载数据
    if (isLoadingData)
    {
        // 取消用户对选中行的更改操作
        dataGridView.ClearSelection();
    }
}

// 加载DataGridView数据的方法
private void LoadDataGridViewData()
{
    // 设置标志位为true,表示正在加载数据
    isLoadingData = true;

    // 加载数据的逻辑代码

    // 加载数据完成后,设置标志位为false,表示加载数据完成
    isLoadingData = false;
}

这样,在加载DataGridView数据时,用户对选中行的更改操作会被阻止,直到数据加载完成后才允许用户进行选中行的更改操作。

推荐的腾讯云相关产品:腾讯云数据库(https://cloud.tencent.com/product/cdb)可以用于存储和管理数据,腾讯云服务器(https://cloud.tencent.com/product/cvm)可以用于部署和运行应用程序。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C# WPF DataGrid获取单元格并改变背景色

01 概述 WPF 自带了一个表格控件datagrid,这个控件类似winfrom中的datagridview,在数据显示的时候也经常会用到,这节主要讲解如何从后台代码获取到单元格控件并改变其相关属性:...]=[GridControl_SelectionChanged($source,$eventArgs)];" SelectedCellsChanged...="DG_SelectedCellsChanged" CellEditEnding="dgSourceData_BeginningEdit" SelectionChanged="dgSourceData_SelectionChanged...Text; ③获取选中的列号: colindex = this.dgSourceData.CurrentCell.Column.DisplayIndex;//获取选中单元格列号 ④获取选中行的行号 SelectionUnit...FullRow" 时候: 可以通过这样获取: rowindex = this.dgSourceData.SelectedIndex;//获取选中单元格行号 在当SelectionUnit="Cell"

2.7K20
  • JTAG下载器连接FPGA不加载flash里的程序

    :当板断电或断开电缆连接,Vivado将在硬件管理器中关闭硬件目标。 重新打开板电源或重新连接电缆后,Vivado现在将自动尝试Hardware Manager中重新打开硬件目标。...电路板上电或正在上电 (上面描述的就是我们说的;JTAG下载器连接FPGA不加载flash里的程序,基本就一样不差) 如果使用了任何配置接口(JTAG除外),并且还连接了JTAG电缆,则JTAG...以下三种情况下可能会发生此问题(上面情况必发生的): 设备上电或重启。脉冲PROGRAM_B不会导致此问题,因为Vivado硬件管理器看不到电缆断开连接并执行了电缆自动检测。...有关更多信息,请参见《(UG894)Vivado Design Suite用户指南中的使用Tcl脚本》中的“加载和运行Tcl脚本”一章。...get_property HW_JTAG $tmp_target close_hw_target $tmp_target open_hw_target $tmp_target 我试过第一种方式,同时用两种方式加载

    1.6K21

    C#实现WinForm DataGridView控件支持叠加数据绑定

    说白了就是支持数据的多次绑定,标准的绑定方法只支持单一绑定,即每次绑定均会清除原来的数据,而叠加数据绑定则可实现每次绑定均以附加的形式(原数据保留)添加到DataGridView控件中,这样就实现了分页加载...,但可完整显示已加载的所有数据,这种应用场景C/S端很常见,B/S端上也有(例如QQ空间动态下面的加载更多按钮) 以下是实现附加数据两种方式: 第一种方式,采用反射获取属性值并循环添加数据行...watch.Stop(); //MessageBox.Show(watch.ElapsedMilliseconds.ToString()); } 以上两种方法代码量来看...,第二种比较简单,第一种执行效率上相对第二种方法要高,原因很简单,第一种每次处理的数据永远都是每页的数据,而第二种每次处理的数据是原有数据与现有数据的合集,随着数据量越多,加载也就越慢,大家也可以试一下...造成影响,我定义了一个接口来规范它:IAppendDataAble,当然这个接口适用于所有控件,然后扩展方法AppendData加判断,如果实现了IAppendDataAble

    1.9K30

    可视化数据库设计软件有哪些_数据库可视化编程

    7)通过对这些 Visual Studio .NET 项目中创建的数据组件编程来与数据资源进行交互。...数据连接”上右击弹出快捷菜单,选择“添加连接”命令); 第三,类型化数据集的创建(新建一个“Windows应用程序”,然后创建的项目上右击,弹出的快捷菜单上选择“添加”→“新建项”命令,“模板”选择...5.DataGridView列的编辑 单击DataGridView控件的设计器中“编辑列”选项,或者DataGridView控件的“属性”面板中单击Columns属性右侧的省略按钮,即可进入“编辑列...控件绑定到BindingSource控件,为BindingNavigator控件添加“加载”“保存”和“取消”按钮,实现加载、保存记录和取消操作的功能。...“加载”“保存”和“取消”按钮添加事件代码分别如下:(窗体运行结果如图5-22所示)*/ private void tsLoad_Click(object sender, EventArgs e) {

    6.7K40

    xBIM 实战04 WinForm窗体中实现IFC模型的加载与浏览

    如果确实需要在传统的 WinForm 窗体中也要加载并显示BIM(.ifc格式)模型文件该如何处理呢?   ...由于WinForm与WPF技术可以互通互用,所以本文介绍一种取巧的方式,WinForm窗体中加载WPF控件,WPF控件中渲染BIM(.ifc格式)模型文件。具体操作步骤如下详细介绍。...四、Winform项目中添加WPF用户控件 ?...五、WinForm窗体中调用WPF查看器   添加一个WinForm窗体。左侧Panel中是 按钮区域,右侧Panel填充窗体剩余的所有区域。 ? 打开VS的工具箱,可以看到如下栏目 ?...后台逻辑:第四步骤中创建了一个WPF用户控件,在此处实例化一个对象 private WinformsAccessibleControl _wpfControl; 构造函数中初始化该对象并将对象添加到

    1.4K30

    ado.net的简单数据库操作(三)——简单增删改查的实际应用

    实例描述:在数据库新建一张TbClass表,将表的内容读取到一个DataGridView上,并且可以winform面板上对表里的内容进行增、删、改的操作。首先给出winform的设计: ?...然后确定查询语句,为:select * from TbClass; 2.添加SqlHelper,编写数据加载方法 首先,创建LoadData()方法,然后Form1_Load()方法中调用LoadData...上 22 this.dataGridView1.DataSource = list; 23 }   使用SqlHelper之前,需要在App.config中添加配置代码和在项目中添加引用...,这是需要注意的,因为以前的博客中有详细讲解如何添加,这里不再讲了哈。...然后,要在鼠标选中某一行,获取该行的tClassId.接下来看看获取该id的做法: dataGridView的属性页中找到一个名为RowEnter的事件,双击进入方法,编写函数: ? ?

    1.3K30

    WinForm程序虚拟分页(实时加载数据)

    ) 知道web中的分页是怎么做出来的朋友一定知道winform做分页会更简单 winform程序一样也不允许用户一下子把数据库中上万条数据全部检索出来 那么怎么让winform程序即不用翻页,又能分部加载数据呢...提供自己的数据管理操作             dataGridView1.VirtualMode = true;                         this.dataGridView1....为TRUE并且需要显示新数据发生             dataGridView1.CellValueNeeded += new DataGridViewCellValueEventHandler(...dataGridView1_CellValueNeeded);             base.OnLoad(e);         }         void dataGridView1_CellValueNeeded...                }                 return 0;             }         }         ///          /// 判断当前行是否缓存中

    95920

    DataGridView控件中加入ComboBox下拉列表框的实现

    本文转载:http://www.cnblogs.com/luqingfei/archive/2007/03/28/691372.html 虽然Visual Studio中 DataGridView...首先新建一个Windows应用程序,将主窗体重命名为MainForm,MainForm中加入一个DataGridView控件,命名为dgv_User。如下图所示: ?   ..."赵六";     drData[] = "";     dtData.Rows.Add(drData);     this.dgv_User.DataSource = dtData; }   为窗体加载事件添加如下方法...或者改变DataGridView列宽将下拉列表框设为不可见 private void dgv_User_Scroll(object sender, ScrollEventArgs e) {     this.cmb_Temp.Visible...this.cmb_Temp.Visible = false;         }         // 改变DataGridView列宽将下拉列表框设为不可见         private void

    3.7K20
    领券