DataGridView控件用法合集

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Drawing;
  4 using System.Linq;
  5 using System.Text;
  6 using System.Threading.Tasks;
  7 using System.Windows.Forms;
  8 
  9 namespace Formes
 10 {
 11 
 12     //*DataGridView控件用法合集 */
 13     class DataGridView控件用法合集 : System.Windows.Forms.Form
 14     {
 15         //    public DataGridView dataGridView1 = new DataGridView();
 16         //    protected override void OnLofdad(EventArgs e)
 17         //    {
 18 
 19 
 20         //        this.AutoSize = true;
 21         //        this.Controls.Add(this.dataGridView1);
 22         //        this.Text = "DataGridView virtual-mode just-in-time demo";
 23 
 24         //        // Complete the initialization of the DataGridView. 
 25         //        this.dataGridView1.Size = new Size(800, 250);
 26         //        this.dataGridView1.Dock = DockStyle.Fill;
 27         //        this.dataGridView1.VirtualMode = true;
 28         //        this.dataGridView1.ReadOnly = true;
 29         //        this.dataGridView1.AllowUserToAddRows = false;
 30         //        this.dataGridView1.AllowUserToOrderColumns = false;
 31         //        this.dataGridView1.SelectionMode =
 32         //            DataGridViewSelectionMode.FullRowSelect;
 33         //    }
 34         protected void OnLodad()
 35         {
 36 
 37             #region
 38             //  1. DataGridView当前的单元格属性取得、变更
 39 
 40             //2. DataGridView编辑属性
 41 
 42             //3. DataGridView最下面一列新追加行非表示
 43 
 44             //4. DataGridView判断当前选中行是否为新追加的行
 45 
 46             //5. DataGridView删除行可否设定
 47 
 48             //6. DataGridView行列不表示和删除
 49 
 50             #endregion
 51 
 52             #region 1.当前的单元格属性取得、变更
 53 
 54             //[C#]
 55 
 56             //'当前选中单元的值
 57 
 58             //Console.WriteLine(this.DataGridView1.CurrentCell.Value);
 59 
 60             ////'当前列的Index值
 61 
 62             //Console.WriteLine(this.DataGridView1.CurrentCell.ColumnIndex);
 63 
 64             //'当前单元的行Index值
 65 
 66             //Console.WriteLine(DataGridView1.CurrentCell.RowIndex)
 67 
 68             //'将控件中(0, 0)处的值,赋给当前单元格.
 69 
 70             //DataGridView1.CurrentCell = DataGridView1[0, 0]
 71 
 72             #endregion
 73 
 74             #region 2.DataGridView编辑属性
 75 
 76             //全部单元格编辑属性
 77 
 78             //[C#]
 79 
 80             //'DataGridView1只读属性
 81 
 82             //DataGridView1.ReadOnly = True
 83 
 84             //指定行列单元格编辑属性
 85 
 86             //[C#]
 87 
 88 
 89 
 90             //DataGridView1.Columns[1]ReadOnly = True
 91 
 92 
 93 
 94             //DataGridView1.Rows[2].ReadOnly = True
 95 
 96 
 97 
 98             //DataGridView1[0, 0].ReadOnly = True
 99 
100             //根据条件判断单元格的编辑属性
101 
102             //下例中column2的值是True的时候,Column1设为可编辑
103 
104             // [C#]
105 
106 
107 
108             //代码
109 
110 
111 
112 
113             #endregion
114 
115             #region 3.DataGridView最下面一列新追加行非表示
116 
117             //[C#]
118 
119 
120 
121             //DataGridView1.AllowUserToAddRows = False
122 
123             #endregion
124 
125             #region 4.判断当前选中行是否为新追加的行
126 
127             //[C#]
128 
129             //if (DataGridView1.CurrentRow.IsNewRow)
130             //{
131             //       Console.WriteLine("当前行,是新添加的行");
132             //}
133             //       else
134             //{
135             //       Console.WriteLine("当前行,不是新添加的行");
136             //}
137 
138             #endregion
139 
140             #region 5. DataGridView删除行可否设定
141 
142             //[C#]
143 
144 
145 
146             //DataGridView1.AllowUserToDeleteRows = False
147 
148             //根据条件判断当前行是否要删除
149 
150             //[C#]
151 
152 
153 
154 
155 
156             //复制代码
157             //代码
158             // 1 private void DataGridView1_UserDeletingRow(object sender, DataGridViewRowCancelEventArgs e)
159             // 2         {
160             // 3 
161             // 4 
162             // 5 
163             // 6             if (MessageBox.Show("确定要删除吗?", "删除确认", MessageBoxButtons.OKCancel, MessageBoxIcon.Question).Equals(System.Windows.Forms.DialogResult.OK))
164             // 7             {
165             // 8 
166             // 9             }
167             //10             else
168             //11             {
169             //12                 e.Cancel = true;
170             //13             }
171             //14         }
172             //复制代码
173 
174 
175 
176 
177             #endregion
178 
179             #region 6. DataGridView行列不表示和删除
180 
181             //行列不表示
182 
183             //[C#]
184 
185             //'DataGridView1的第一列不表示
186 
187             //DataGridView1.Columns[0].Visible = False
188 
189             //'DataGridView1的第一行不表示
190 
191             //DataGridView1.Rows[0].Visible = False
192 
193             //行列表头部分不表示
194 
195             //[C#] 
196             //DataGridView1.ColumnHeadersVisible = False
197 
198 
199 
200             //DataGridView1.RowHeadersVisible = False
201 
202             //指定行列删除
203 
204             //[C#]
205 
206 
207 
208             //DataGridView1.Columns.Remove("Column1")
209 
210 
211 
212             //DataGridView1.Columns.RemoveAt(0)
213 
214 
215 
216             //DataGridView1.Rows.RemoveAt(0)
217 
218             //选择的行列删除(多行列)
219 
220             //[C#]
221 
222             //'DataGridView1删除选中的行
223 
224             //foreach (DataGridViewRow r in DataGridView1.SelectedRows)
225             //            {
226             //                if (!r.IsNewRow)
227             //                {
228             //                    DataGridView1.Rows.Remove(r);
229             //                }
230             //            }
231 
232             #endregion
233 
234             #region 7. DataGridView行列宽度高度设置为不能编辑
235 
236             //8. DataGridView行高列幅自动调整
237 
238             //9. DataGridView指定行列冻结
239 
240             //10. DataGridView列顺序变更可否设定
241 
242             //11. DataGridView行复数选择
243 
244             //12. DataGridView选择的行、列、单元格取得
245 
246 
247 
248             #endregion
249 
250             #region 7. DataGridView行列宽度高度设置为不能编辑
251 
252             // [C#]
253 
254             //'DataGridView1的列的宽设为不能编辑
255 
256             //DataGridView1.AllowUserToResizeColumns = False
257 
258             //'DataGridView1的行的高设为不能编辑
259 
260             //DataGridView1.AllowUserToResizeRows = False
261 
262             //指定行列宽度高度设置为不能编辑
263 
264             //[C#]
265 
266             //'DataGridView1指定列宽度设置为不能编辑
267 
268             //DataGridView1.Columns[0].Resizable = DataGridViewTriState.False
269 
270             //'DataGridView1指定行高度设置为不能编辑
271 
272             //DataGridView1.Rows[0].Resizable = DataGridViewTriState.False
273 
274             //列幅行高最小值设定
275 
276             //[C#]
277 
278             //'列幅最小值设定为100
279 
280             //DataGridView1.Columns[0].MinimumWidth = 100
281 
282             //'行高最小值设定为50
283 
284             //DataGridView1.Rows[0].MinimumHeight = 50
285 
286             //行列表头部分行高列幅设置为不能编辑
287 
288             //[C#]
289 
290             //行列表头部分行高设置为不能编辑
291 
292             //DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.DisableResizing
293 
294             //行列表头部分列幅设置为能编辑
295 
296             //DataGridView1.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.EnableResizing
297 
298             #endregion
299 
300             #region 8.DataGridView行高列幅自动调整
301 
302             //[C#]
303 
304             //根据内容, 列幅自动调整
305 
306             //DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
307 
308             //根据内容, 行高自动调整
309 
310             //DataGridView1.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
311 
312             //表头部分行高列幅自动调整
313 
314             //[C#]
315 
316             //'表头列高自動調整
317 
318             //DataGridView1.ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize
319 
320             //'表头行幅自動調整
321 
322             //DataGridView1.RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders
323 
324             //指定列自动调整
325 
326             //[C#]
327 
328             //'指定列的列幅自動調整
329 
330             //DataGridView1.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells
331 
332             #endregion
333 
334             #region 9.DataGridView指定行列冻结
335 
336             //列冻结(当前列以及左侧做所有列)
337 
338             //[C#]
339 
340             //'DataGridView1的左側2列固定
341 
342             //DataGridView1.Columns[1].Frozen = True
343 
344             //行冻结(当前行以及上部所有行)
345 
346             //[C#]
347 
348             //'DataGridView1的上部2行固定
349 
350             //DataGridView1.Rows[2].Frozen = True
351 
352             //指定单元格冻结(单元格所在行上部分所有行,列左侧所有列)
353 
354             //[C#]
355 
356             //DataGridView1[0, 0].Frozen = True
357 
358             #endregion
359 
360             #region 10.DataGridView列顺序变更可否设定
361 
362             //[C#]
363 
364             //'DataGridView1的列的位置设定为允许改变
365 
366             //DataGridView1.AllowUserToOrderColumns = True
367 
368             //但是如果列冻结的情况下,冻结的部分不能变更到非冻结的部分。
369 
370             //变更后列位置取得
371 
372             //[C#]
373 
374             //'取得列"Column1"現在的位置
375 
376             //Console.WriteLine(DataGridView1.Columns["Column1"].DisplayIndex)
377 
378             //'列"Column1"移動到最前面
379 
380             //DataGridView1.Columns["Column1"].DisplayIndex = 0
381 
382             #endregion
383 
384 
385             #region 11.DataGridView行复数选择
386 
387             //不可选择多行
388 
389             //[C#]
390 
391             //'DataGridView1不可选择多行
392 
393             //DataGridView1.MultiSelect = False
394 
395             //单元格选择的时候默认为选择整行
396 
397             //[C#]
398 
399             //'单元格选择的时候默认为选择整行
400 
401             //DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
402 
403             #endregion
404 
405             #region 12.DataGridView选择的行、列、单元格取得
406 
407             //[C#]
408 
409             //'输出选择的单元格位置
410 
411             //Console.WriteLine("选择的单元格位置")
412 
413             //foreach (DataGridViewCell c in DataGridView1.SelectedCells)
414 
415             //{
416 
417             //     Console.WriteLine(c.ColumnIndex + "," + c.RowIndex);
418 
419             //}
420 
421             //'输出选择的行位置
422 
423             //Console.WriteLine("选择的行位置")
424 
425             //foreach (DataGridViewRow r in dgvBeforeStep.SelectedRows)
426 
427             //{
428 
429             //     Console.WriteLine(r.Index);
430 
431             //}
432 
433             //''输出选择的列位置
434 
435             //foreach (DataGridViewColumn col in dgvBeforeStep.SelectedColumns)
436 
437             //{
438 
439             //    Console.WriteLine(col.Index);
440 
441             //}
442 
443             //指定行、列、单元格取得
444 
445             //[C#]
446 
447             //'(0, 0)的选中
448 
449             //DataGridView1[0, 0].Selected = True
450 
451             //'Index为1的行选中
452 
453             //DataGridView1.Rows[1].Selected = True
454 
455             //'Index为2的列选中
456 
457             //DataGridView1.Columns[2].Selected = True
458 
459             #endregion
460 
461             #region 13.DataGridView指定单元格是否表示
462 
463             //14.DataGridView表头部单元格取得
464 
465             //15.DataGridView表头部单元格文字列设定
466 
467             //16.DataGridView选择的部分拷贝至剪贴板
468 
469             //17.DataGridView粘贴
470 
471             //18.DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)
472 
473 
474 
475             #endregion
476 
477             #region 13.DataGridView指定单元格是否表示
478 
479             //[C#]
480 
481 
482 
483             //if (DataGridView1[2, 0].Displayed && DataGridView1[2, 0].Visible)
484             //{
485             //    DataGridView1.CurrentCell = DataGridView1[2, 0];
486             //}
487 
488 
489             #endregion
490 
491             #region 14. DataGridView表头部单元格取得
492 
493             //[C#]
494 
495             //'DataGridView1第一列表头改变
496 
497             //DataGridView1.Columns[0].HeaderCell.Value = "第一列"
498 
499             //'DataGridView1第一行表头改变
500 
501             //DataGridView1.Rows[0].HeaderCell.Value = "第一行"
502 
503             //'DataGridView1左上角单元格值改变
504 
505             //DataGridView1.TopLeftHeaderCell.Value = "左上"
506 
507             #endregion
508 
509             #region 15.DataGridView表头部单元格文字列设定
510 
511             //更改列Header表示文字列
512 
513             //[C#]
514 
515             //'DataGridView1改变第一列头部单元格文字
516 
517             //DataGridView1.Columns[0].HeaderText = "第一列"
518 
519             //更改行Header表示文字列
520 
521             //[C#]
522 
523             //'DataGridView1行的头部单元格为序号
524 
525 
526 
527             //for (int i = 0; i<DataGridView1.Rows.Count-1; i++)
528             //{
529             //    DataGridView1.Rows[i].HeaderCell.Value=i.ToString();
530             //}
531 
532 
533             //'行的宽度自动调节
534 
535             //DataGridView1.AutoResizeRowHeadersWidth( DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders)
536 
537             //最左上Header单元格文字列
538 
539             //[C#]
540 
541             //'修改最左上单元格
542 
543             //DataGridView1.TopLeftHeaderCell.Value = "/"
544 
545             #endregion
546 
547             #region 16.DataGridView选择的部分拷贝至剪贴板
548 
549             //拷贝模式设定
550 
551             //[C#]
552 
553             //DataGridView1.ClipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithoutHeaderText
554 
555             //选中部分拷贝
556 
557             //[C#]
558 
559             //Clipboard.SetDataObject(DataGridView1.GetClipboardContent())
560 
561             #endregion
562 
563             #region 17.DataGridView粘贴
564 
565             //[C#]
566 
567 
568 
569             //代码
570 
571 
572             #endregion
573 
574             #region 18.DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息)
575 
576             //[C#]
577 
578             //指定单元格
579 
580             //DataGridView1[0, 0].ToolTipText = "指定单元格"
581 
582             //指定列
583 
584             //DataGridView1.Columns[0].ToolTipText = "指定列"
585 
586             //指定行
587 
588             //DataGridView1.Rows[0].HeaderCell.ToolTipText = "指定行"
589 
590             //CellToolTipTextNeeded事件,在多个单元格使用相同的ToolTips的时候,可以用该事件,下例为显示当前单元格的行号和列号
591 
592             //[C#]
593 
594             //'CellToolTipTextNeeded事件
595 
596 
597 
598             //private void DataGridView1_CellToolTipTextNeeded(object sender, DataGridViewCellToolTipTextNeededEventArgs e)
599             //{
600             //    e.ToolTipText = e.RowIndex.ToString() + "," + e.ColumnIndex.ToString();
601             //}
602 
603 
604             #endregion
605 
606             #region 19. DataGridView中的ContextMenuStrip属性
607 
608             //20. DataGridView指定滚动框位置
609 
610             //21. DataGridView手动追加列
611 
612             //22. DataGridView全体分界线样式设置
613 
614             //23. DataGridView根据单元格属性更改显示内容
615 
616             //24. DataGridView新追加行的行高样式设置る
617 
618             //25. DataGridView新追加行单元格默认值设置
619 
620 
621 
622             #endregion
623 
624             #region 19. DataGridView中的ContextMenuStrip属性
625 
626             //[C#]
627 
628             //DataGridView1.ContextMenuStrip = this.ContextMenuStrip1
629 
630             //DataGridView1.Columns[0)].ContextMenuStrip = this.ContextMenuStrip2
631 
632             //DataGridView1.Columns[0].HeaderCell.ContextMenuStrip = this.ContextMenuStrip2
633 
634             //DataGridView1.Rows[0].ContextMenuStrip = this.ContextMenuStrip3
635 
636             //DataGridView1[1, 0].ContextMenuStrip = this.ContextMenuStrip4
637 
638             //也可以用CellContextMenuStripNeeded、RowContextMenuStripNeeded属性进行定义
639 
640             //[C#]
641 
642 
643 
644             //复制代码
645             // 1 private void DataGridView1_CellContextMenuStripNeeded(object sender, DataGridViewCellContextMenuStripNeededEventArgs e)
646             // 2 {
647             // 3     if (e.RowIndex<0)
648             // 4     {
649             // 5         e.ContextMenuStrip = this.contextMenuStrip1;
650             // 6     }
651             // 7     else if (e.ColumnIndex<0)
652             // 8     {
653             // 9         e.ContextMenuStrip = this.contextMenuStrip2;
654             //10     }
655             //11 }
656             //12 
657             //复制代码
658 
659 
660             #endregion
661 
662             #region 20. DataGridView指定滚动框位置
663 
664             //[C#]
665 
666             //DataGridView1.FirstDisplayedScrollingRowIndex = 0
667 
668             //DataGridView1.FirstDisplayedScrollingColumnIndex = 0
669 
670             #endregion
671 
672             #region 21.DataGridView手动追加列
673 
674             //[C#]
675 
676             //DataGridView1.AutoGenerateColumns = False
677 
678             //DataGridView1.DataSource = BindingSource1
679 
680             //DataGridViewTextBoxColumn textColumn = new DataGridViewTextBoxColumn()
681 
682             //textColumn.DataPropertyName = "Column1"
683 
684             //textColumn.Name = "Column1"
685 
686             //textColumn.HeaderText = "Column1"
687 
688             //DataGridView1.Columns.Add(textColumn)
689 
690             #endregion
691 
692             #region 22.DataGridView全体分界线样式设置
693 
694             //[C#]
695 
696             //DataGridView1.BorderStyle = BorderStyle.Fixed3D
697 
698             //单元格上下左右分界线样式设置
699 
700             //[C#]
701 
702             //DataGridView1.AdvancedCellBorderStyle.Top = DataGridViewAdvancedCellBorderStyle.InsetDouble
703 
704             //DataGridView1.AdvancedCellBorderStyle.Right = DataGridViewAdvancedCellBorderStyle.Inset
705 
706             //DataGridView1.AdvancedCellBorderStyle.Bottom = DataGridViewAdvancedCellBorderStyle.Inset
707 
708             //DataGridView1.AdvancedCellBorderStyle.Left = DataGridViewAdvancedCellBorderStyle.InsetDouble
709 
710             #endregion
711 
712             #region 23.DataGridView根据单元格属性更改显示内容
713 
714             //如下例,当该列是字符串时,自动转换文字大小写
715 
716             //[C#]
717 
718 
719 
720             //复制代码
721             //if (DataGridView1.Columns[e.ColumnIndex].Name.Equals("Column1") && e.Value.GetType().Equals("String"))
722             //{
723             //    string str = e.Value.ToString();
724             //e.Value = str.ToUpper();
725             //    e.FormattingApplied = true;
726             //}
727             //复制代码
728 
729 
730             #endregion
731 
732             #region 24. DataGridView新追加行的行高样式设置
733 
734             ////行高设置
735 
736             ////[C#]
737 
738             //DataGridView1.RowTemplate.Height = 50
739 
740             //DataGridView1.RowTemplate.MinimumHeight = 50
741 
742             //样式设置
743 
744             //[C#]
745 
746             //'设置背景色为黄色
747 
748             //DataGridView1.DefaultCellStyle.BackColor = Color.Yellow
749 
750             #endregion
751 
752             #region 25.DataGridView新追加行单元格默认值设置
753 
754             //[C#]
755             #endregion
756 
757         }
758     }
759 }

 

vb.net操作DataGridView控件用法的集合,包括: 1. DataGridView当前的单元格属性取得、变更 2. DataGridView编辑属性 3. DataGridView最下面一列新追加行非表示 4. DataGridView判断当前选中行是否为新追加的行 5. DataGridView删除行可否设定 6. DataGridView行列不表示和删除 DataGridView控件用法合集(二) 7. DataGridView行列宽度高度设置为不能编辑 8. DataGridView行高列幅自动调整 9. DataGridView指定行列冻结 10. DataGridView列顺序变更可否设定 11. DataGridView行复数选择 12. DataGridView选择的行、列、单元格取得 DataGridView控件用法合集(三) 13. DataGridView指定单元格是否表示 14. DataGridView表头部单元格取得 15. DataGridView表头部单元格文字列设定 16. DataGridView选择的部分拷贝至剪贴板 17.DataGridView粘贴 18. DataGridView单元格上ToolTip表示设定(鼠标移动到相应单元格上时,弹出说明信息) DataGridView控件用法合集(四) 19. DataGridView中的ContextMenuStrip属性 20. DataGridView指定滚动框位置 21. DataGridView手动追加列 22. DataGridView全体分界线样式设置 23. DataGridView根据单元格属性更改显示内容 24. DataGridView新追加行的行高样式设置る 25. DataGridView新追加行单元格默认值设置 DataGridView中输入错误数据的处理(五) 26. DataGridView单元格数据错误标签表示 27. DataGridView单元格内输入值正确性判断 28. DataGridView单元格输入错误值事件的捕获 DataGridView控件用法合集(六) 29. DataGridView行排序(点击列表头自动排序的设置) 30. DataGridView自动行排序(新追加值也会自动排序) 31. DataGridView自动行排序禁止情况下的排序 32. DataGridView指定列指定排序 DataGridView控件用法合集(七) 33. DataGridView单元格样式设置 34. DataGridView文字表示位置的设定 35. DataGridView单元格内文字列换行 36. DataGridView单元格DBNull值表示的设定 37. DataGridView单元格样式格式化 38. DataGridView指定单元格颜色设定 39. DataGridView单元格文字字体设置 40. DataGridView根据单元格值设定单元格样式 DataGridView控件用法合集(八) 41. DataGridView设置单元格背景颜色 42. DataGridView行样式描画 43. DataGridView显示行号 44. DataGridView焦点所在单元格焦点框不显示的设定 DataGridView控件用法合集(九) 45. DataGridView中显示选择框CheckBox 46. DataGridView中显示下拉框ComboBox 47. DataGridView单击打开下拉框 48. DataGridView中显示按钮 49. DataGridView中显示链接 50. DataGridView中显示图像 DataGridView控件用法合集(十) 51. DataGridView编辑中单元格控件取得 52. DataGridView输入自动完成 53. DataGridView单元格编辑时键盘KEY事件取得 54. DataGridView下拉框(ComboBox)单元格编辑时事件取得 55. DataGridView下拉框(ComboBox)单元格允许文字输入设定 DataGridView控件用法合集(十一) 56. DataGridView根据值不同在另一列中显示相应图片 57. DataGridView中显示进度条(ProgressBar) 58. DataGridView中添加MaskedTextBox DataGridView控件用法合集(十二) 59. DataGridView中Enter键按下焦点移至旁边的单元格 60. DataGridView行集合化(Group)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值