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

【C#】让DataGridView输入实时更新数据源计算

本文适用Winform开发,且DataGridView数据源为DataTable/DataView情况。...DataGridView(下称dgv),A、B两都要在dgv显示,其中A可编辑(ReadOnly=false)。...需求是对A进行编辑时(输入或删除),B能实时变化。例如下面的例子: ? 【目标文件名】是根据【款号】【色号】计算而来(连接字符串),当编辑款号/色号时,目标文件名能实时变化。...),但dtdv没有,后者只到行这一级,虽然可以通过DataRow[x]或DataRowView[x]访问单元格值,但在类层级上并不存在DataCell这样表示单元格实体类,也就是dtdv编辑...dgv(DataGridViewColumn)CellTemplate属性,为上述单元格实例,多个可以设为同一实例。

5.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

问与答67: 如何每3同一行只允许一个单元格能输入数据?

Q:工作表同一每三个单元格同时只能有一个单元格显示数据。...如下图1所示,在单元格区域B6:D6,如果在单元格B6输入了数据,那么单元格C6D6内容就会被清除;如果在单元格C6输入了数据,那么单元格B6D6内容会被清除;如果在单元格D6输入了数据...,那么单元格B6C6内容就会被清除。...如果当前输入单元格所在号除以3,余数为2,表明当前单元格在该组3个单元格第1个单元格,那么其相邻两个单元格内容就要清空。...如果当前单元格所在号除以3,余数为0,表明当前单元格处在3个单元格中间,那么其相邻左侧右侧单元格内容要清空。

1.1K20

WinForm 控件 DataGridView 常用操作

1、取消自动生成 在窗体load事件里面设置表格dataGridViewAutoGenerateColumns为 false dataGridView.AutoGenerateColumns = false...2、取消所有选中单元格 调用方法ClearSelection dataGridView.ClearSelection() 3、单元格自动换行显示 设置DefaultCellStyle 里面的WarapMode...e) { //获取行对象 var row = dataGridView.Rows[e.RowIndex]; //对行第一value赋值 row.Cells[0]....- 40, e.RowBounds.Top + 4, 16, 16); } 7、转换单元格显示 在表格CellFormatting事件里面进行转换操作,比如一个状态字段是int类型,显示需要转换成对应字符串显示...]; //取得值,如果是绑定数据,可以将row.DataBoundItem转换成绑定对象再取值判断 var cell=row.cell[0].value.ToString

1.8K30

DataGridView控件用法一:数据绑定

DataGridView控件,可以显示编辑来自多种不同类型数据源表格数据。 将数据绑定到DataGridView控件非常简单直观,在大多数情况下,只需设置DataSource属性即可。...在绑定到包含多个列表或表数据源时,只需将DataMember属性设置为指定要绑定列表或表字符串即可。...一、非绑定模式 所谓非绑定模式就是DataGridView控件显示数据不是来自于绑定数据源,而是可以通过代码手动将数据填充到DataGridView控件,这样就为DataGridView控件增加了很大灵活性...与基于文本值一起使用,在绑定到数字字符串类型值时自动生成 DataGridViewCheckBoxColumn 与booleancheckState值一起使用,在绑定到这些类型值时自动生成...,通常用来做未绑定 DataGridViewComboBoxColumn 用户在单元格显示下拉列表,不会在绑定时自动生成,通常需要手动进行数据绑定 DataGridViewLinkColumn 用于在单元格显示超链接

3.8K20

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

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

2.1K10

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

e.Cancel = true; } } ********DataGridView 行、隐藏删除: 1) 行、隐藏 // DataGridView1第一隐藏 DataGridView1...; 3) 行删除 ‘ 删除名为”Column1″ DataGridView1.Columns.Remove(“Column1”); ‘ 删除第一 DataGridView1.Columns.RemoveAt...Header全部单元格宽自己主动调整 DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;...即:DataGridView1.AutoResizeRow (0) DataGridView1.AutoResizeRows() c,暂时,让行头头自己主动调整 // 头高度自己主动调整...在该事件处理除了能够设定默认值以外,还能够指定某些特定单元格ReadOnly属性等。

3.7K10

C# winform DataGridView 常见属性

C# winform DataGridView 属性说明 ① 取得或者修改当前单元格内容 ② 设定单元格只读 ③ 不显示最下面的新行 ④ 判断新增行 ⑤ 行用户删除操作自定义 ⑥ 行、隐藏删除...⑦ 禁止或者行Resize ⑧ 宽和行高以及高度行头宽度自动调整 ⑨ 冻结或行 ⑩ 顺序调整 ⑪ 行头单元格 ⑫ 剪切板操作 ⑬ 单元格ToolTip设置...宽和行高自动调整设定: 1) 设定行高宽自动调整 // 设定包括Header所有单元格宽自动调整 DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells...即:DataGridView1.AutoResizeRow (0) DataGridView1.AutoResizeRows() c,临时,让行头头自动调整 // 头高度自动调整 DataGridView1...在该事件处理除了可以设定默认值以外,还可以指定某些特定单元格ReadOnly属性等。

3.6K40

【转】基于C#WinFormDataGridView控件操作汇总

基于C#WinFormDataGridView控件操作汇总 一、单元格内容操作 *****// 取得当前单元格内容 Console.WriteLine(DataGridView1...属性(而不是直接访问单元格)来确定单元格所在行: DataGridView.CurrentCellAddress.Y DataGridView.CurrentCellAddress.X 。...e.Cancel = true; } } ********DataGridView 行、隐藏删除: 1) 行、隐藏 // DataGridView1第一隐藏 DataGridView1...即:DataGridView1.AutoResizeRow (0) DataGridView1.AutoResizeRows() c,临时,让行头头自动调整 // 头高度自动调整 DataGridView1...在该事件处理除了可以设定默认值以外,还可以指定某些特定单元格ReadOnly属性等。

5.1K50

Excel如何“提取”一红色单元格数据?

Excel技巧:Excel如何“提取”一红色单元格数据? ? 场景:财务、HR、采购、商务、后勤部需要数据整理办公人士。 问题:Excel如何“提取”一红色单元格数据?...解答:利用单元格颜色排序搞定。 具体操作方法如下:第一步:进行颜色排序 将鼠标放置在数据区任意单元格,单击“排序”按钮(下图1处),对下列表“型号”进行“单元格颜色”按红色进行排序。...第二步:复制红色单元格数据 将红色单元格数据复制到D。黏贴时可以选择“选择性黏贴—值”。效果如下: ? 是不是很快搞定了客户朋友问题。但这样有个问题,破坏了数据原有的顺序。这时候怎么办呢?...补救步骤:增加辅助 排序前,新增一“序号”。 ? 按颜色排序,复制出数据后,序号顺序被打乱。 ? 第三步:按序号在升序排序。...直接光标停在序号列上,单击“升序”按钮,即可恢复到排序前顺序。(下图中AZ为快捷升序按钮) ? 升序后,效果如下: ? 总结:辅助是Excel中常见解决问题方法思路。

5.6K20

【愚公系列】2023年11月 Winform控件专题 DataGridView控件详解

:根据显示单元格内容自适应单元格宽度,除了标题。...在按钮单击事件,将选中行复制到剪贴板,并设置了复制到剪贴板内容类型为包含标题内容。...具体步骤如下:打开Winform项目,拖拉一个DataGridView控件到窗体;添加要显示,设置属性;设置RowTemplate属性,例如设置行背景颜色:dataGridView1.RowTemplate.DefaultCellStyle.BackColor...数据编辑:DataGridView控件可以允许用户对数据进行编辑。可以通过设置属性来控制哪些可以编辑、编辑类型格式等。数据排序:DataGridView控件可以允许用户对数据进行排序。...Step 2: 添加DataGridView控件在设计器添加一个DataGridView控件,并在其上添加四个按钮:添加、编辑、删除保存。

76511

DataGridView 密码(显示为*号)设置

曾经为在DataGridView设置密码(显示为*号)而发愁,如何把Windows 窗体 DataGridView 某一数据显示为“*”。 哈哈,今天终于搞定了。...需要在DataGridView2个事件写代码真麻烦!...下面的代码把第4设置为密码(显示为*号):         ///         /// 单元格显示格式事件         ///        ...*号,*号个数实际数据长度相同             if (e.ColumnIndex == 3)             {                 if (e.Value !...e.Value.ToString().Length);                 }             }         }         ///         /// 编辑单元格控件事件

2.2K30

DataGridView 合并单元格

Windows Forms DataGridView 没有提供合并单元格功能,要实现合并单元格功能就要在CellPainting事件中使用Graphics.DrawLine Graphics.DrawString...下面的代码可以对DataGridView第1内容相同单元格进行合并:         private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs... e)         {             // 对第1相同单元格进行合并             if (e.ColumnIndex == 0 && e.RowIndex !...                        e.Graphics.FillRectangle(backColorBrush, e.CellBounds);                         // 画 Grid 边线(仅画单元格底边线右边线...)                         //   如果下一行当前行数据不同,则在当前单元格画一条底边线                         if (e.RowIndex <

4.8K20
领券