C# GridView 操作匯總

來源:互聯網
上載者:User
GridView 操作匯總 1、自訂欄     Customize Cells and Columns in the Windows Forms DataGridView Control by Extending Their      Behavior and Appearance      Host Controls in Windows Forms DataGridView Cells      繼承 DataGridViewTextBoxCell 類產生新的Cell類,然後再繼承 DataGridViewColumn 產生新的Column類,並指定     CellTemplate為新的Cell類。新產生的Column便可以增加到DataGridView中去。 2、自動適應列寬     Programmatically Resize Cells to Fit Content in the Windows Forms DataGridView Control      Samples:     DataGridView.AutoSizeColumns(            DataGridViewAutoSizeColumnCriteria.HeaderAndDisplayedRows);     DataGridView.AutoSizeColumn(                 DataGridViewAutoSizeColumnCriteria.HeaderOnly,                 2, false);     DataGridView.AutoSizeRow(                 DataGridViewAutoSizeRowCriteria.Columns,                 2, false);     DataGridView.AutoSizeRows(               DataGridViewAutoSizeRowCriteria.HeaderAndColumns,                 0, dataGridView1.Rows.Count, false); 3、可以綁定並顯示對象     Bind Objects to Windows Forms DataGridView Controls 4、可以改變表格線條風格     Change the Border and Gridline Styles in the Windows Forms DataGridView Control      Samples:     this.dataGridView1.GridColor = Color.BlueViolet;     this.dataGridView1.BorderStyle = BorderStyle.Fixed3D;     this.dataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;     this.dataGridView1.RowHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single;     this.dataGridView1.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single; 5、動態改變列是否顯示,和動態改變列的顯示順序     Change the Order of the Columns in the Windows Forms DataGridView Control      Samples:     customersDataGridView.Columns["CustomerID"].Visible = false;     customersDataGridView.Columns["ContactName"].DisplayIndex = 0;     customersDataGridView.Columns["ContactTitle"].DisplayIndex = 1;     customersDataGridView.Columns["City"].DisplayIndex = 2;     customersDataGridView.Columns["Country"].DisplayIndex = 3;     customersDataGridView.Columns["CompanyName"].DisplayIndex = 4; 6、可以在列中顯示映像      Display Images in Cells of the Windows Forms DataGridView Control      Samples:             Icon treeIcon = new Icon(this.GetType(), "tree.ico");            DataGridViewImageColumn iconColumn = new DataGridViewImageColumn ();            iconColumn.Image = treeIcon.ToBitmap();            iconColumn.Name = "Tree";            iconColumn.HeaderText = "Nice tree";            dataGridView1.Columns.Insert(2, iconColumn); 7、格式化顯示內容:     Format Data in the Windows Forms DataGridView Control      Samples:     this.dataGridView1.Columns["UnitPrice"].DefaultCellStyle.Format = "c";     this.dataGridView1.Columns["ShipDate"].DefaultCellStyle.Format = "d";     this.dataGridView1.DefaultCellStyle.NullValue = "no entry";     this.dataGridView1.DefaultCellStyle.WrapMode = DataGridViewWrapMode.Wrap;     this.dataGridView1.Columns["CustomerName"].DefaultCellStyle.Alignment =                           DataGridViewContentAlignment.MiddleRight;     8、在拖動列的捲軸時可以將指定的列凍結      Freeze Columns in the Windows Forms DataGridView Control      Samples:將指定列及以前的列固定不動     this.dataGridView1.Columns["AddToCartButton"].Frozen = true; 9、擷取選擇的儲存格,行,列      Get the Selected Cells, Rows, and Columns in the Windows Forms DataGridView Control      Samples:        見msdn。 10、顯示錄入時出現的錯誤資訊     Handle Errors that Occur During Data Entry in the Windows Forms DataGridView Control      Samples:     private void dataGridView1_DataError(object sender,          DataGridViewDataErrorEventArgs e)          {         // If the data source raises an exception when a cell value is          // commited, display an error message.         if (e.Exception != null &&              e.Context == DataGridViewDataErrorContext.Commit)         {             MessageBox.Show("CustomerID value must be unique.");         }         } 11、大資料量顯示採用Virtual Mode      Implement Virtual Mode in the Windows Forms DataGridView Control 12、設定指定的列唯讀     Make Columns in the Windows Forms DataGridView Control Read-Only      Samples:     dataGridView1.Columns["CompanyName"].ReadOnly = true; 13、移去自動產生的列      Remove Autogenerated Columns from a Windows Forms DataGridView Control      Sample:     dataGridView1.AutoGenerateColumns = true;     dataGridView1.DataSource = customerDataSet;     dataGridView1.Columns.Remove ("Fax");     或:     dataGridView1.Columns["CustomerID"].Visible = false; 14、自訂選擇模式     Set the Selection Mode of the Windows Forms DataGridView Control      Sample:     this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;     this.dataGridView1.MultiSelect = false; 15、自訂設定游標進入儲存格是否編輯模式(編輯模式)     Specify the Edit Mode for the Windows Forms DataGridView Control      this.dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter; 16、新行指定預設值     Specify Default Values for New Rows in the Windows Forms DataGridView Control      Sample:     private void dataGridView1_DefaultValuesNeeded(object sender,                        System.Windows.Forms.DataGridViewRowEventArgs e)     {       e.Row.Cells["Region"].Value = "WA";        e.Row.Cells["City"].Value = "Redmond";        e.Row.Cells["PostalCode"].Value = "98052-6399";       e.Row.Cells["Region"].Value = "NA";       e.Row.Cells["Country"].Value = "USA";     e.Row.Cells["CustomerID"].Value = NewCustomerId();     } 17、資料驗證     Validate Data in the Windows Forms DataGridView Control      Samples:      private void dataGridView1_CellValidating(object sender,              DataGridViewCellValidatingEventArgs e)         {         // Validate the CompanyName entry by disallowing empty strings.         if (dataGridView1.Columns[e.ColumnIndex].Name == "CompanyName")         {             if (e.FormattedValue.ToString() == String.Empty)             {                 dataGridView1.Rows[e.RowIndex].ErrorText =                      "Company Name must not be empty";                 e.Cancel = true;             }         }         }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.