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

我的datagridview单元格值更改事件不工作..C#和SQL Server2008

datagridview是一个用于显示和编辑数据的控件,而datagridview单元格值更改事件是在用户修改了单元格的值时触发的事件。

在C#中,可以通过以下步骤来处理datagridview单元格值更改事件:

  1. 首先,确保你已经正确地绑定了数据源到datagridview控件上。你可以使用数据适配器或手动添加数据到datagridview中。
  2. 在窗体的加载事件中,为datagridview控件的CellValueChanged事件添加事件处理程序。例如:
代码语言:csharp
复制
private void Form_Load(object sender, EventArgs e)
{
    dataGridView1.CellValueChanged += new DataGridViewCellEventHandler(dataGridView1_CellValueChanged);
}
  1. 在事件处理程序中,可以通过检查事件参数来确定哪个单元格的值发生了更改。然后,你可以执行相应的操作。例如,你可以更新数据库中的相应数据。
代码语言:csharp
复制
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
    if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
    {
        DataGridViewCell cell = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex];
        // 获取更改后的值
        string newValue = cell.Value.ToString();
        
        // 执行相应的操作,比如更新数据库中的数据
        // ...
    }
}

至于SQL Server 2008,它是一种关系型数据库管理系统,被广泛用于存储和管理数据。你可以使用SQL Server 2008来创建数据库、表、视图等,并执行各种数据库操作,如插入、更新、删除数据等。

在C#中,可以使用ADO.NET来连接和操作SQL Server数据库。你可以使用SqlConnection类来建立与数据库的连接,使用SqlCommand类来执行SQL语句。

以下是一个简单的示例,演示如何连接到SQL Server 2008数据库并执行查询操作:

代码语言:csharp
复制
using System.Data.SqlClient;

// 建立与数据库的连接
string connectionString = "Data Source=服务器地址;Initial Catalog=数据库名称;User ID=用户名;Password=密码";
using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    
    // 执行查询操作
    string sql = "SELECT * FROM 表名";
    using (SqlCommand command = new SqlCommand(sql, connection))
    {
        SqlDataReader reader = command.ExecuteReader();
        
        // 处理查询结果
        while (reader.Read())
        {
            // 读取数据
            string column1Value = reader.GetString(0);
            int column2Value = reader.GetInt32(1);
            
            // 执行相应的操作
            // ...
        }
        
        reader.Close();
    }
}

希望以上内容能帮助到你解决datagridview单元格值更改事件不工作的问题,并了解如何在C#中连接和操作SQL Server 2008数据库。如果你需要更多关于腾讯云相关产品和服务的信息,可以访问腾讯云官方网站:https://cloud.tencent.com/

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

相关·内容

  • 【转】基于C#的WinForm中DataGridView控件操作汇总

    基于C#的WinForm中DataGridView控件操作汇总 一、单元格内容的操作 *****// 取得当前单元格内容 Console.WriteLine(DataGridView1...*******DataGridView 单元格表示值的自定义 通过CellFormatting事件,可以自定义单元格的表示值。...*******DataGridView 用户输入时,单元格输入值的设定 通过 DataGridView.CellParsing 事件可以设定用户输入的值。...在该事件中处理除了可以设定默认值以外,还可以指定某些特定的单元格的ReadOnly属性等。...四、针对触发事件的一些介绍 我认为只要记住常用的即可,比如鼠标的操作,一些常见的点击触发事件;比如_CellParsing()一般在编辑状态结束的时候发生。

    5.3K50

    C#——DataGridView控件填写数据事件

    对于DataGridView控件,与单元格内容相关的有以下这几个事件: // 当单元格内容改变并且提交之后发生(提交一般是单元格在编辑完之后失去焦点...e) { } // 在单元格的状态相对于其内容的更改而更改时发生。...举个例子,我单击一个单元格,则单元格进入编辑状态,CellBeginEdit事件发生,然后我输入1,2……乃至更多的东西,上述的事件也不会发生。另外Key*系列的事件也试过,也没反应。...如果要像TextBox那样,每输入一个字符就发生一次的事件怎么办呢?可以用以下方法。原来dataGridView控件的单元格只是个容器,他可以容纳其他的控件,最一般的就是一个文本框。...EditingControlShowing事件比上述事件还要早发生,他是dataGridView控件为了使用户可以编辑,而加载一个TextBox(如果单元格时复选框,是其他的控件,那么就加载对应的控件)

    1.6K62

    c# WinForm开发 DataGridView控件的各种操作总结(单元格操作,属性设置)

    *******DataGridView 单元格表示值的自己定义 通过CellFormatting事件,能够自己定义单元格的表示值。...*******DataGridView 用户输入时,单元格输入值的设定 通过 DataGridView.CellParsing 事件能够设定用户输入的值。...新加行的默认值的设定 须要指定新加行的默认值的时候,能够在DataGridView.DefaultValuesNeeded事件里处理。...在该事件中处理除了能够设定默认值以外,还能够指定某些特定的单元格的ReadOnly属性等。...四、针对触发事件的一些介绍 我觉得仅仅要记住经常使用的就可以,比方鼠标的操作,一些常见的点击触发事件;比方_CellParsing()一般在编辑状态结束的时候发生。

    4.4K10

    期末作业C#实现学生宿舍管理系统

    开发背景 完整代码下载地址:点我下载 优化移步: 《c#中在datagridview的表格动态增加一个按钮方法》 《C#实现多窗口切换:Panel详细教程(亲测)》 文章还在更新,上次更新时间2022...视图,添加字段后如下所示 注意:在新的优化界面中我将该部分窗体重新放到了用户控件中去了,通过panel完成跳转交互,优化用户体验,如果需要更改优化的同学,可以看优化部分(2022/06/14修改)...,也就是id值,并删除当前行 我们测试下: 接下来,只需要把获取到的id => 6 进行sql语句操作即可 完整代码: //删除 int index = dataGridView1.SelectedCells...,先获取id值就可以,所以步骤是一样的,新建一个修改按钮,如下图所示: 双击后我们在该点击事件加入获取id的代码(和刚刚的一样): //修改 int index = dataGridView1...,需要用user_id去user表里面查询] 所以我们需要用到sql语法使两个表关联起来(user_id对应id) 对这个SQL语句不懂的同学看这个: 我门再将之前的数据表拿出来对照 User

    29730

    使用C#开发数据库应用程序

    b.常见错误 注意:C#允许在初始化的同时指定数组长度,但是数组初始值的数目必须与数组的长度完全一样....(最小化),默认值为Normal b.窗体的重要事件 事件: Load 窗体加载事件,窗体加载时发生 MoseClick 鼠标单击事件,当用户单击窗体时发生 MouseDoubleClick...属性 Connection Command对象使用的数据库连接 CommandText 执行的SQL语句 方法 ExecuteNonQuery 执行不返还行的语句,如update等 ExecuteReader...DataGridView的列是否移动 ReadOnly 指定单元格是否为只读 AllowUserToAddRows 是否允许用户增加行 false AllowUserToDeletRows 是否允许用户删除行...(2)设置DataGridView的属性和个列的属性 (3)指定DataGridView的数据源 c.如何保存修改后的数据 (1)增加"保存修改"按钮 (2)编写事件处理方法 d.常见错误

    5.9K30

    C#之二十三 打印和水晶报表

    ​C#程序设计及宿舍管理系统实战 ​​ 打印组件介绍 打印是常用的的功能,打印的原理从本质上和Windows窗体画图的原理是一样的,你在窗体里面画了一个圆,那么同样的代码,打印机也会在纸张的同一个位置打印了出一个圆...该对话框用来选择和配置数据源,如果项目中存在数据源,则在”可用数据源“中选择”项目数据“项,并从选择合适的数据源,如果没有数据源,可以新建一个数据源,本实例以SQL Server 2005为例。...参数说明如下: Template:指定是否添加工作薄,如果为True ,表示添加;否则,表示不添加。...返回值:返回Workbook类型,表示一个Excel工作薄。...(2)Excel对象的Cell属性 Excel.Cells[0,0]=”Excel”; 该属性用来指定Excel工作薄中单元格的内容。

    13100

    C#学习之路(1)--数据库技术

    前言 在7月10日就要去扬州实习了,首先是为期2个月的培训。一个月的Java,一个月的C#。在这一个月里面,准备梳理一下java和C#的基础知识,同时也进行更深一步的学习。...最近也一直在听八三夭的一首,我不想改变世界,我只想不被世界改变。同时也对自己的未来充满着信心和憧憬。 ---- ADO.NET概述 ADO.NET是美国微软公司推出的.NET平台中的一种数据访问技术。...Update()方法:该方法用于将DataSet对象中某一个数据表更改的内容更新到对应的真实的数据库里面的数据表中。...private SqlDataAdapter adapter; private DataSet data ; //这样会让SqlDataAdapter对象自动实现与DataSet更改和关联的...Form1_Load(object sender, EventArgs e) { //默认不选中 if (dataGridView1.RowCount

    2K40

    C#二十八 数据绑定

    5.1.1 DataGridView的属性和方法​ DataGridView控件常用的重要属性和事件 属性 说明 Columns 包含的列的集合 DataSource DataGridView 的数据源...事件 说明 CurrentCellChanged 单击单元格时发生 CellContentClick 单击某个单元格时发生 从窗体设计工具箱窗口的“数据”卡片中拖一个DataGridView...下面是DataGridView控件的组成图(图15.9),我们将依据这幅组成图来详细讨论DataGridView单元格值的获取以及单元格、行、列等外观的设置。...Value); } } 要想获得你选中的某一行或某一列单元格的值,就需要用到前面提到的CurrentRow和CurrentCell两个属性,分别返回选中的行对象和返回选中的单元格对象。...(); } DataGridView控件提供了CurrentCellAddress属性来获得选中单元格的列表和行标,如下代码修改DataGridView中选中的单元格中对应表中项的值: privatevoid

    11110

    C# winform 界面美化技巧(扁平化设计)

    大家好,又见面了,我是你们的朋友全栈君。...此处分为两个步骤,第一步是更改winform自带的MainForm窗体属性,第二步是添加窗体事件。...调节背景色,建议找到自己喜欢的颜色,然后使用取色器(我用的是按键精灵自带的取色板)取得想要的RGB参数,输入到BackColor属性之中 在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动...美化 通过设置ColumnHeadersDefaultCellStyle,来改变列标题的背景、字体和颜色 通过设置DefaultCellStyle,来改变单元格背景、字体和颜色 通过设置RowHeadersDefaultCellStyle...因为进度条ProgressBar由于是虚拟模式下运行的,所以调整BackColor和ForeColor都不会产生效果,它仍然会根据windows的主题来更改,为了使其按照我们想要的颜色来显示,我们可以将虚拟模式的命令去掉

    7.2K30

    C# winform ——界面美化技巧

    C# winform 界面美化技巧(扁平化设计) 转 关于C#界面美化的一些小技巧 在不使用第三方控件如 IrisSkin 的前提下,依然可以对winform做出让人眼前一亮的美化 ?...首先,我们先来实现主界面的扁平化 此处分为两个步骤,第一步是更改winform自带的MainForm窗体属性,第二步是添加窗体事件。...调节背景色,建议找到自己喜欢的颜色,然后使用取色器(我用的是按键精灵自带的取色板)取得想要的RGB参数,输入到BackColor属性之中 在主窗体的Mouse_Down中添加如下事件,实现窗体随意拖动:...美化 通过设置ColumnHeadersDefaultCellStyle,来改变列标题的背景、字体和颜色 通过设置DefaultCellStyle,来改变单元格背景、字体和颜色 通过设置RowHeadersDefaultCellStyle...因为进度条ProgressBar由于是虚拟模式下运行的,所以调整BackColor和ForeColor都不会产生效果,它仍然会根据windows的主题来更改,为了使其按照我们想要的颜色来显示,我们可以将虚拟模式的命令去掉

    5.7K41

    DataGridViewCheckBoxColumn的勾选框勾上了,Value却是false

    列,当修改checkbox状态时实时获得其状态值    不知道大家有没有这样的经验,当点击或者取消datagridview的checkbox列时,比较难获得其状态是选中还是未选中,进而不好进行其它操作,...下面就列出它的解决办法: 主要用到了datagridview的CurrentCellDirtyStateChanged和CellValueChanged两个事件 CurrentCellDirtyStateChanged...事件是提交对checkbox状态的修改 CellValueChanged事件是当状态提交后,也就是单元格值改变后做一些其它的操作,这里是将checkbox列的true或false状态作为tooptiptext...属性设置到同一行的button列 CurrentCellDirtyStateChanged事件代码 : private void dataGridView1_CurrentCellDirtyStateChanged...列单元格                 DataGridViewCheckBoxCell dgvCheckBoxCell = this.dataGridView1.Rows[e.RowIndex].Cells

    2.2K10
    领券