/mcs/class/Managed.Windows.Forms/System.Windows.Forms/DataGridView.cs
C# | 6814 lines | 5459 code | 1143 blank | 212 comment | 1513 complexity | 87251461e09094f579a0da9c80b4575a MD5 | raw file
Possible License(s): Unlicense, Apache-2.0, LGPL-2.0, MPL-2.0-no-copyleft-exception, CC-BY-SA-3.0, GPL-2.0
Large files files are truncated, but you can click here to view the full file
- // Permission is hereby granted, free of charge, to any person obtaining
- // a copy of this software and associated documentation files (the
- // "Software"), to deal in the Software without restriction, including
- // without limitation the rights to use, copy, modify, merge, publish,
- // distribute, sublicense, and/or sell copies of the Software, and to
- // permit persons to whom the Software is furnished to do so, subject to
- // the following conditions:
- //
- // The above copyright notice and this permission notice shall be
- // included in all copies or substantial portions of the Software.
- //
- // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
- // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
- // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
- // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- //
- // Copyright (c) 2005 Novell, Inc. (http://www.novell.com)
- //
- // Author:
- // Pedro Martínez Juliá <pedromj@gmail.com>
- // Ivan N. Zlatev <contact@i-nz.net>
- //
- using System;
- using System.ComponentModel;
- using System.Runtime.InteropServices;
- using System.Drawing;
- using System.Reflection;
- using System.Collections;
- using System.Text;
- using System.Collections.Generic;
- namespace System.Windows.Forms {
- [ComVisibleAttribute(true)]
- [ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)]
- [Designer("System.Windows.Forms.Design.DataGridViewDesigner, " + Consts.AssemblySystem_Design, "System.ComponentModel.Design.IDesigner")]
- [Editor("System.Windows.Forms.Design.DataGridViewComponentEditor, " + Consts.AssemblySystem_Design, typeof (System.ComponentModel.ComponentEditor))]
- [ComplexBindingProperties ("DataSource", "DataMember")]
- [DefaultEvent ("CellContentClick")]
- [Docking (DockingBehavior.Ask)]
- public class DataGridView : Control, ISupportInitialize, IBindableComponent, IDropTarget
- {
- private DataGridViewAdvancedBorderStyle adjustedTopLeftHeaderBorderStyle;
- private DataGridViewAdvancedBorderStyle advancedCellBorderStyle;
- private DataGridViewAdvancedBorderStyle advancedColumnHeadersBorderStyle;
- private DataGridViewAdvancedBorderStyle advancedRowHeadersBorderStyle;
- private bool allowUserToAddRows;
- private bool allowUserToDeleteRows;
- private bool allowUserToOrderColumns;
- private bool allowUserToResizeColumns;
- private bool allowUserToResizeRows;
- private DataGridViewCellStyle alternatingRowsDefaultCellStyle;
- private Point anchor_cell;
- private bool autoGenerateColumns;
- private bool autoSize;
- private DataGridViewAutoSizeColumnsMode autoSizeColumnsMode;
- private DataGridViewAutoSizeRowsMode autoSizeRowsMode;
- private Color backColor;
- private Color backgroundColor;
- private Image backgroundImage;
- private BorderStyle borderStyle;
- private DataGridViewCellBorderStyle cellBorderStyle;
- private DataGridViewClipboardCopyMode clipboardCopyMode;
- private DataGridViewHeaderBorderStyle columnHeadersBorderStyle;
- private DataGridViewCellStyle columnHeadersDefaultCellStyle;
- private int columnHeadersHeight;
- private DataGridViewColumnHeadersHeightSizeMode columnHeadersHeightSizeMode;
- private bool columnHeadersVisible;
- private DataGridViewColumnCollection columns;
- private DataGridViewCell currentCell;
- private Point currentCellAddress;
- //private DataGridViewRow currentRow;
- private string dataMember;
- private object dataSource;
- private DataGridViewCellStyle defaultCellStyle;
- //private Control editingControl;
- private DataGridViewEditMode editMode;
- private bool enableHeadersVisualStyles = true;
- private DataGridViewCell firstDisplayedCell;
- private int firstDisplayedScrollingColumnHiddenWidth;
- private int firstDisplayedScrollingColumnIndex;
- private int firstDisplayedScrollingRowIndex;
- private Color gridColor = Color.FromKnownColor(KnownColor.ControlDark);
- private int horizontalScrollingOffset;
- private DataGridViewCell hover_cell = null;
- private bool isCurrentCellDirty;
- //private bool isCurrentRowDirty;
- private bool multiSelect;
- private bool readOnly;
- private DataGridViewHeaderBorderStyle rowHeadersBorderStyle;
- private DataGridViewCellStyle rowHeadersDefaultCellStyle;
- private bool rowHeadersVisible;
- private int rowHeadersWidth;
- private DataGridViewRowHeadersWidthSizeMode rowHeadersWidthSizeMode;
- private DataGridViewRowCollection rows;
- private DataGridViewCellStyle rowsDefaultCellStyle;
- private DataGridViewRow rowTemplate;
- private ScrollBars scrollBars;
- private DataGridViewSelectionMode selectionMode;
- private bool showCellErrors;
- private bool showCellToolTips;
- private bool showEditingIcon;
- private bool showRowErrors;
- private DataGridViewColumn sortedColumn = null;
- private SortOrder sortOrder;
- private bool standardTab;
- private DataGridViewHeaderCell topLeftHeaderCell;
- private Cursor userSetCursor;
- private int verticalScrollingOffset;
- private bool virtualMode;
- private HScrollBar horizontalScrollBar;
- private VScrollBar verticalScrollBar;
- private Control editingControl;
- private bool is_autogenerating_columns = false;
- private bool is_binding = false;
- private bool new_row_editing = false;
-
- // These are used to implement selection behaviour with SHIFT pressed.
- private int selected_row = -1;
- private int selected_column = -1;
-
- // Stuff for error Tooltips
- private Timer tooltip_timer;
- private ToolTip tooltip_window;
- private DataGridViewCell tooltip_currently_showing;
- private DataGridViewSelectedRowCollection selected_rows;
- private DataGridViewSelectedColumnCollection selected_columns;
- private DataGridViewRow editing_row;
-
- DataGridViewHeaderCell pressed_header_cell;
- DataGridViewHeaderCell entered_header_cell;
- // For column/row resizing via mouse
- private bool column_resize_active = false;
- private bool row_resize_active = false;
- private int resize_band = -1;
- private int resize_band_start = 0;
- private int resize_band_delta = 0;
-
- public DataGridView ()
- {
- SetStyle (ControlStyles.Opaque, true);
- //SetStyle (ControlStyles.UserMouse, true);
- SetStyle (ControlStyles.OptimizedDoubleBuffer, true);
-
- adjustedTopLeftHeaderBorderStyle = new DataGridViewAdvancedBorderStyle();
- adjustedTopLeftHeaderBorderStyle.All = DataGridViewAdvancedCellBorderStyle.Single;
- advancedCellBorderStyle = new DataGridViewAdvancedBorderStyle();
- advancedCellBorderStyle.All = DataGridViewAdvancedCellBorderStyle.Single;
- advancedColumnHeadersBorderStyle = new DataGridViewAdvancedBorderStyle();
- advancedColumnHeadersBorderStyle.All = DataGridViewAdvancedCellBorderStyle.Single;
- advancedRowHeadersBorderStyle = new DataGridViewAdvancedBorderStyle();
- advancedRowHeadersBorderStyle.All = DataGridViewAdvancedCellBorderStyle.Single;
- alternatingRowsDefaultCellStyle = new DataGridViewCellStyle();
- allowUserToAddRows = true;
- allowUserToDeleteRows = true;
- allowUserToOrderColumns = false;
- allowUserToResizeColumns = true;
- allowUserToResizeRows = true;
- autoGenerateColumns = true;
- autoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.None;
- autoSizeRowsMode = DataGridViewAutoSizeRowsMode.None;
- backColor = Control.DefaultBackColor;
- backgroundColor = SystemColors.AppWorkspace;
- borderStyle = BorderStyle.FixedSingle;
- cellBorderStyle = DataGridViewCellBorderStyle.Single;
- clipboardCopyMode = DataGridViewClipboardCopyMode.EnableWithAutoHeaderText;
- columnHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single;
- columnHeadersDefaultCellStyle = new DataGridViewCellStyle();
- columnHeadersDefaultCellStyle.BackColor = SystemColors.Control;
- columnHeadersDefaultCellStyle.ForeColor = SystemColors.WindowText;
- columnHeadersDefaultCellStyle.SelectionBackColor = SystemColors.Highlight;
- columnHeadersDefaultCellStyle.SelectionForeColor = SystemColors.HighlightText;
- columnHeadersDefaultCellStyle.Font = this.Font;
- columnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
- columnHeadersDefaultCellStyle.WrapMode = DataGridViewTriState.True;
- columnHeadersHeight = 23;
- columnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.EnableResizing;
- columnHeadersVisible = true;
- columns = CreateColumnsInstance();
- columns.CollectionChanged += OnColumnCollectionChanged;
- currentCellAddress = new Point (-1, -1);
- dataMember = String.Empty;
- defaultCellStyle = new DataGridViewCellStyle();
- defaultCellStyle.BackColor = SystemColors.Window;
- defaultCellStyle.ForeColor = SystemColors.ControlText;
- defaultCellStyle.SelectionBackColor = SystemColors.Highlight;
- defaultCellStyle.SelectionForeColor = SystemColors.HighlightText;
- defaultCellStyle.Font = this.Font;
- defaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
- defaultCellStyle.WrapMode = DataGridViewTriState.False;
- editMode = DataGridViewEditMode.EditOnKeystrokeOrF2;
- firstDisplayedScrollingColumnHiddenWidth = 0;
- isCurrentCellDirty = false;
- multiSelect = true;
- readOnly = false;
- rowHeadersBorderStyle = DataGridViewHeaderBorderStyle.Single;
- rowHeadersDefaultCellStyle = (DataGridViewCellStyle) columnHeadersDefaultCellStyle.Clone ();
- rowHeadersVisible = true;
- rowHeadersWidth = 41;
- rowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.EnableResizing;
- rows = CreateRowsInstance();
- rowsDefaultCellStyle = new DataGridViewCellStyle();
- selectionMode = DataGridViewSelectionMode.RowHeaderSelect;
- showCellErrors = true;
- showEditingIcon = true;
- scrollBars = ScrollBars.Both;
- userSetCursor = Cursor.Current;
- virtualMode = false;
- horizontalScrollBar = new HScrollBar();
- horizontalScrollBar.Scroll += OnHScrollBarScroll;
- horizontalScrollBar.Visible = false;
-
- verticalScrollBar = new VScrollBar();
- verticalScrollBar.Scroll += OnVScrollBarScroll;
- verticalScrollBar.Visible = false;
-
- Controls.AddRange (new Control[] {horizontalScrollBar, verticalScrollBar});
- }
- void ISupportInitialize.BeginInit ()
- {
- }
- void ISupportInitialize.EndInit ()
- {
- }
- // Propiedades
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public virtual DataGridViewAdvancedBorderStyle AdjustedTopLeftHeaderBorderStyle {
- get { return adjustedTopLeftHeaderBorderStyle; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public DataGridViewAdvancedBorderStyle AdvancedCellBorderStyle {
- get { return advancedCellBorderStyle; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public DataGridViewAdvancedBorderStyle AdvancedColumnHeadersBorderStyle {
- get { return advancedColumnHeadersBorderStyle; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public DataGridViewAdvancedBorderStyle AdvancedRowHeadersBorderStyle {
- get { return advancedRowHeadersBorderStyle; }
- }
- [DefaultValue (true)]
- public bool AllowUserToAddRows {
- get {
- if (allowUserToAddRows && DataManager != null)
- return DataManager.AllowNew;
- return allowUserToAddRows;
- }
- set {
- if (allowUserToAddRows != value) {
- allowUserToAddRows = value;
- if (!value) {
- if (new_row_editing)
- CancelEdit ();
- RemoveEditingRow ();
- } else {
- PrepareEditingRow (false, false);
- }
- OnAllowUserToAddRowsChanged(EventArgs.Empty);
- Invalidate ();
- }
- }
- }
- [DefaultValue (true)]
- public bool AllowUserToDeleteRows {
- get {
- if (allowUserToDeleteRows && DataManager != null)
- return DataManager.AllowRemove;
- return allowUserToDeleteRows;
- }
- set {
- if (allowUserToDeleteRows != value) {
- allowUserToDeleteRows = value;
- OnAllowUserToDeleteRowsChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (false)]
- public bool AllowUserToOrderColumns {
- get { return allowUserToOrderColumns; }
- set {
- if (allowUserToOrderColumns != value) {
- allowUserToOrderColumns = value;
- OnAllowUserToOrderColumnsChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (true)]
- public bool AllowUserToResizeColumns {
- get { return allowUserToResizeColumns; }
- set {
- if (allowUserToResizeColumns != value) {
- allowUserToResizeColumns = value;
- OnAllowUserToResizeColumnsChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (true)]
- public bool AllowUserToResizeRows {
- get { return allowUserToResizeRows; }
- set {
- if (allowUserToResizeRows != value) {
- allowUserToResizeRows = value;
- OnAllowUserToResizeRowsChanged(EventArgs.Empty);
- }
- }
- }
- public DataGridViewCellStyle AlternatingRowsDefaultCellStyle {
- get { return alternatingRowsDefaultCellStyle; }
- set {
- if (alternatingRowsDefaultCellStyle != value) {
- alternatingRowsDefaultCellStyle = value;
- OnAlternatingRowsDefaultCellStyleChanged(EventArgs.Empty);
- Invalidate();
- }
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- [DefaultValue (true)]
- public bool AutoGenerateColumns {
- get { return autoGenerateColumns; }
- set {
- if (autoGenerateColumns != value) {
- autoGenerateColumns = value;
- OnAutoGenerateColumnsChanged(EventArgs.Empty);
- }
- }
- }
- public override bool AutoSize {
- get { return autoSize; }
- set {
- if (autoSize != value) {
- autoSize = value;
- //OnAutoSizeChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (DataGridViewAutoSizeColumnsMode.None)]
- public DataGridViewAutoSizeColumnsMode AutoSizeColumnsMode {
- get { return autoSizeColumnsMode; }
- set {
- if (!Enum.IsDefined(typeof(DataGridViewAutoSizeColumnsMode), value)) {
- throw new InvalidEnumArgumentException("Value is not valid DataGridViewAutoSizeColumnsMode.");
- }
- if (value == DataGridViewAutoSizeColumnsMode.ColumnHeader && columnHeadersVisible == false) {
- foreach (DataGridViewColumn col in columns) {
- if (col.AutoSizeMode == DataGridViewAutoSizeColumnMode.NotSet) {
- throw new InvalidOperationException("Cant set this property to ColumnHeader in this DataGridView.");
- }
- }
- }
- if (value == DataGridViewAutoSizeColumnsMode.Fill) {
- foreach (DataGridViewColumn col in columns) {
- if (col.AutoSizeMode == DataGridViewAutoSizeColumnMode.NotSet) {
- if (col.Frozen) {
- throw new InvalidOperationException("Cant set this property to Fill in this DataGridView.");
- }
- }
- }
- }
-
- autoSizeColumnsMode = value;
- AutoResizeColumns (value);
- Invalidate ();
- }
- }
- [DefaultValue (DataGridViewAutoSizeRowsMode.None)]
- public DataGridViewAutoSizeRowsMode AutoSizeRowsMode {
- get { return autoSizeRowsMode; }
- set {
- if (autoSizeRowsMode != value) {
- if (!Enum.IsDefined(typeof(DataGridViewAutoSizeRowsMode), value)) {
- throw new InvalidEnumArgumentException("Value is not valid DataGridViewRowsMode.");
- }
- if ((value == DataGridViewAutoSizeRowsMode.AllHeaders || value == DataGridViewAutoSizeRowsMode.DisplayedHeaders) && rowHeadersVisible == false) {
- throw new InvalidOperationException("Cant set this property to AllHeaders or DisplayedHeaders in this DataGridView.");
- }
- autoSizeRowsMode = value;
-
- if (value == DataGridViewAutoSizeRowsMode.None)
- foreach (DataGridViewRow row in Rows)
- row.ResetToExplicitHeight ();
- else
- AutoResizeRows (value);
-
- OnAutoSizeRowsModeChanged(new DataGridViewAutoSizeModeEventArgs(false));
- Invalidate ();
- ////////////////////////////////////////////////////////////////
- }
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public override Color BackColor {
- get { return backColor; }
- set {
- if (backColor != value) {
- backColor = value;
- OnBackColorChanged(EventArgs.Empty);
- }
- }
- }
- public Color BackgroundColor {
- get { return backgroundColor; }
- set {
- if (backgroundColor != value) {
- if (value == Color.Empty) {
- throw new ArgumentException("Cant set an Empty color.");
- }
- backgroundColor = value;
- OnBackgroundColorChanged(EventArgs.Empty);
- }
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
- public override Image BackgroundImage {
- get { return backgroundImage; }
- set {
- if (backgroundImage != value) {
- backgroundImage = value;
- OnBackgroundImageChanged(EventArgs.Empty);
- }
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
- public override ImageLayout BackgroundImageLayout {
- get { return base.BackgroundImageLayout; }
- set { base.BackgroundImageLayout = value; }
- }
- [DefaultValue (BorderStyle.FixedSingle)]
- public BorderStyle BorderStyle {
- get { return borderStyle; }
- set {
- if (borderStyle != value) {
- if (!Enum.IsDefined(typeof(BorderStyle), value)) {
- throw new InvalidEnumArgumentException("Invalid border style.");
- }
- borderStyle = value;
- OnBorderStyleChanged(EventArgs.Empty);
- }
- }
- }
- internal int BorderWidth {
- get {
- switch (BorderStyle) {
- case BorderStyle.Fixed3D:
- return 2;
- case BorderStyle.FixedSingle:
- return 1;
- case BorderStyle.None:
- default:
- return 0;
- }
- }
- }
- [Browsable (true)]
- [DefaultValue (DataGridViewCellBorderStyle.Single)]
- public DataGridViewCellBorderStyle CellBorderStyle {
- get { return cellBorderStyle; }
- set {
- if (cellBorderStyle != value) {
- if (value == DataGridViewCellBorderStyle.Custom)
- throw new ArgumentException ("CellBorderStyle cannot be set to Custom.");
- cellBorderStyle = value;
- DataGridViewAdvancedBorderStyle border = new DataGridViewAdvancedBorderStyle ();
- switch (cellBorderStyle) {
- case DataGridViewCellBorderStyle.Single:
- border.All = DataGridViewAdvancedCellBorderStyle.Single;
- break;
- case DataGridViewCellBorderStyle.Raised:
- case DataGridViewCellBorderStyle.RaisedVertical:
- border.Bottom = DataGridViewAdvancedCellBorderStyle.None;
- border.Top = DataGridViewAdvancedCellBorderStyle.None;
- border.Left = DataGridViewAdvancedCellBorderStyle.Outset;
- border.Right = DataGridViewAdvancedCellBorderStyle.Outset;
- break;
- case DataGridViewCellBorderStyle.Sunken:
- border.All = DataGridViewAdvancedCellBorderStyle.Inset;
- break;
- case DataGridViewCellBorderStyle.None:
- border.All = DataGridViewAdvancedCellBorderStyle.None;
- break;
- case DataGridViewCellBorderStyle.SingleVertical:
- border.Bottom = DataGridViewAdvancedCellBorderStyle.None;
- border.Top = DataGridViewAdvancedCellBorderStyle.None;
- border.Left = DataGridViewAdvancedCellBorderStyle.None;
- border.Right = DataGridViewAdvancedCellBorderStyle.Single;
- break;
- case DataGridViewCellBorderStyle.SunkenVertical:
- border.Bottom = DataGridViewAdvancedCellBorderStyle.None;
- border.Top = DataGridViewAdvancedCellBorderStyle.None;
- border.Left = DataGridViewAdvancedCellBorderStyle.Inset;
- border.Right = DataGridViewAdvancedCellBorderStyle.Inset;
- break;
- case DataGridViewCellBorderStyle.SingleHorizontal:
- case DataGridViewCellBorderStyle.SunkenHorizontal:
- border.Bottom = DataGridViewAdvancedCellBorderStyle.Inset;
- border.Top = DataGridViewAdvancedCellBorderStyle.Inset;
- border.Left = DataGridViewAdvancedCellBorderStyle.None;
- border.Right = DataGridViewAdvancedCellBorderStyle.None;
- break;
- case DataGridViewCellBorderStyle.RaisedHorizontal:
- border.Bottom = DataGridViewAdvancedCellBorderStyle.Outset;
- border.Top = DataGridViewAdvancedCellBorderStyle.Outset;
- border.Left = DataGridViewAdvancedCellBorderStyle.None;
- border.Right = DataGridViewAdvancedCellBorderStyle.None;
- break;
- }
-
- advancedCellBorderStyle = border;
-
- OnCellBorderStyleChanged (EventArgs.Empty);
- }
- }
- }
- [Browsable (true)]
- [DefaultValue (DataGridViewClipboardCopyMode.EnableWithAutoHeaderText)]
- public DataGridViewClipboardCopyMode ClipboardCopyMode {
- get { return clipboardCopyMode; }
- set { clipboardCopyMode = value; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [DefaultValue (0)]
- public int ColumnCount {
- get { return columns.Count; }
- set {
- if (value < 0) {
- throw new ArgumentOutOfRangeException("ColumnCount",
- "ColumnCount must be >= 0.");
- }
- if (dataSource != null) {
- throw new InvalidOperationException("Cant change column count if DataSource is set.");
- }
- if (value < columns.Count) {
- for (int i = columns.Count -1; i >= value; i--) {
- columns.RemoveAt(i);
- }
- }
- else if (value > columns.Count) {
- for (int i = columns.Count; i < value; i++) {
- DataGridViewTextBoxColumn col = new DataGridViewTextBoxColumn ();
- columns.Add(col);
- }
- }
- }
- }
- [Browsable (true)]
- [DefaultValue (DataGridViewHeaderBorderStyle.Raised)]
- public DataGridViewHeaderBorderStyle ColumnHeadersBorderStyle {
- get { return columnHeadersBorderStyle; }
- set {
- if (columnHeadersBorderStyle != value) {
- columnHeadersBorderStyle = value;
- OnColumnHeadersBorderStyleChanged(EventArgs.Empty);
- }
- }
- }
- [AmbientValue (null)]
- public DataGridViewCellStyle ColumnHeadersDefaultCellStyle {
- get { return columnHeadersDefaultCellStyle; }
- set {
- if (columnHeadersDefaultCellStyle != value) {
- columnHeadersDefaultCellStyle = value;
- OnColumnHeadersDefaultCellStyleChanged(EventArgs.Empty);
- }
- }
- }
- [Localizable (true)]
- public int ColumnHeadersHeight {
- get { return columnHeadersHeight; }
- set {
- if (columnHeadersHeight != value) {
- if (value < 4) {
- throw new ArgumentOutOfRangeException("ColumnHeadersHeight",
- "Column headers height cant be less than 4.");
- }
- if (value > 32768 ) {
- throw new ArgumentOutOfRangeException("ColumnHeadersHeight",
- "Column headers height cannot be more than 32768.");
- }
- columnHeadersHeight = value;
- OnColumnHeadersHeightChanged(EventArgs.Empty);
-
- if (columnHeadersVisible)
- Invalidate ();
- }
- }
- }
- [RefreshProperties (RefreshProperties.All)]
- [DefaultValue (DataGridViewColumnHeadersHeightSizeMode.EnableResizing)]
- public DataGridViewColumnHeadersHeightSizeMode ColumnHeadersHeightSizeMode {
- get { return columnHeadersHeightSizeMode; }
- set {
- if (columnHeadersHeightSizeMode != value) {
- if (!Enum.IsDefined(typeof(DataGridViewColumnHeadersHeightSizeMode), value)) {
- throw new InvalidEnumArgumentException("Value is not a valid DataGridViewColumnHeadersHeightSizeMode.");
- }
- columnHeadersHeightSizeMode = value;
- OnColumnHeadersHeightSizeModeChanged(new DataGridViewAutoSizeModeEventArgs(false));
- }
- }
- }
- [DefaultValue (true)]
- public bool ColumnHeadersVisible {
- get { return columnHeadersVisible; }
- set {
- if (columnHeadersVisible != value) {
- columnHeadersVisible = value;
- Invalidate ();
- }
- }
- }
- [MergableProperty (false)]
- [Editor ("System.Windows.Forms.Design.DataGridViewColumnCollectionEditor, " + Consts.AssemblySystem_Design, typeof (System.Drawing.Design.UITypeEditor))]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Content)]
- public DataGridViewColumnCollection Columns {
- get { return columns; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public DataGridViewCell CurrentCell {
- get { return currentCell; }
- set {
- /////////////////////////////////////////////////////
- /// *** InvalidOperationException ***
- /// Changes to the specified cell cannot be committed
- /// to the data cache, or the new cell is in a hidden
- /// row.
- /////////////////////////////////////////////////////
- if (value == null)
- MoveCurrentCell (-1, -1, true, false, false, true);
- else if (value.DataGridView != this)
- throw new ArgumentException("The cell is not in this DataGridView.");
- else
- MoveCurrentCell (value.OwningColumn.Index, value.OwningRow.Index, true, false, false, true);
- }
- }
- [Browsable (false)]
- public Point CurrentCellAddress {
- get { return currentCellAddress; }
- }
- [Browsable (false)]
- public DataGridViewRow CurrentRow {
- get {
- if (currentCell != null)
- return currentCell.OwningRow;
- return null;
- }
- }
- [DefaultValue ("")]
- [Editor ("System.Windows.Forms.Design.DataMemberListEditor, " + Consts.AssemblySystem_Design, typeof (System.Drawing.Design.UITypeEditor))]
- public string DataMember {
- get { return dataMember; }
- set {
- if (dataMember != value) {
- dataMember = value;
- if (BindingContext != null)
- ReBind ();
- OnDataMemberChanged(EventArgs.Empty);
- }
- }
- }
- [RefreshProperties (RefreshProperties.Repaint)]
- [DefaultValue (null)]
- [AttributeProvider (typeof (IListSource))]
- public object DataSource {
- get { return dataSource; }
- set {
- /* The System.Windows.Forms.DataGridView class supports the standard Windows Forms data-binding model. This means the data source can be of any type that implements:
- - the System.Collections.IList interface, including one-dimensional arrays.
- - the System.ComponentModel.IListSource interface, such as the System.Data.DataTable and System.Data.DataSet classes.
- - the System.ComponentModel.IBindingList interface, such as the System.ComponentModel.Collections.BindingList<> class.
- - the System.ComponentModel.IBindingListView interface, such as the System.Windows.Forms.BindingSource class.
- */
- if (!(value == null || value is IList || value is IListSource || value is IBindingList || value is IBindingListView))
- throw new NotSupportedException ("Type cannot be bound.");
-
- if (value != DataSource) {
- if (IsHandleCreated && value != null && BindingContext != null && BindingContext[value] != null)
- DataMember = String.Empty;
- ClearBinding ();
-
-
- // Do not set dataSource prior to the BindingContext check because there is some lazy initialization
- // code which might result in double call to ReBind here and in OnBindingContextChanged
- if (BindingContext != null) {
- dataSource = value;
- ReBind ();
- } else {
- dataSource = value;
- }
- OnDataSourceChanged (EventArgs.Empty);
- }
- }
- }
- internal CurrencyManager DataManager {
- get {
- if (DataSource != null && BindingContext != null) {
- string dataMember = DataMember;
- if (dataMember == null)
- dataMember = String.Empty;
- return (CurrencyManager) this.BindingContext[DataSource, dataMember];
- }
- return null;
- }
- }
- [AmbientValue (null)]
- public DataGridViewCellStyle DefaultCellStyle {
- get { return defaultCellStyle; }
- set {
- if (defaultCellStyle != value) {
- defaultCellStyle = value;
- OnDefaultCellStyleChanged(EventArgs.Empty);
- }
- }
- }
- public override Rectangle DisplayRectangle {
- get { return base.DisplayRectangle; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public Control EditingControl {
- get {
- return editingControl;
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public Panel EditingPanel {
- get { throw new NotImplementedException(); }
- }
- [DefaultValue (DataGridViewEditMode.EditOnKeystrokeOrF2)]
- public DataGridViewEditMode EditMode {
- get { return editMode; }
- set {
- if (editMode != value) {
- editMode = value;
- OnEditModeChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (true)]
- public bool EnableHeadersVisualStyles {
- get { return enableHeadersVisualStyles; }
- set { enableHeadersVisualStyles = value; }
- }
- internal DataGridViewHeaderCell EnteredHeaderCell {
- get { return entered_header_cell; }
- set {
- if (entered_header_cell == value)
- return;
- if (ThemeEngine.Current.DataGridViewHeaderCellHasHotStyle (this)) {
- Region area_to_invalidate = new Region ();
- area_to_invalidate.MakeEmpty ();
- if (entered_header_cell != null)
- area_to_invalidate.Union (GetHeaderCellBounds (entered_header_cell));
- entered_header_cell = value;
- if (entered_header_cell != null)
- area_to_invalidate.Union (GetHeaderCellBounds (entered_header_cell));
- Invalidate (area_to_invalidate);
- area_to_invalidate.Dispose ();
- } else
- entered_header_cell = value;
- }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public DataGridViewCell FirstDisplayedCell {
- get { return firstDisplayedCell; }
- set {
- if (value.DataGridView != this) {
- throw new ArgumentException("The cell is not in this DataGridView.");
- }
- firstDisplayedCell = value;
- }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public int FirstDisplayedScrollingColumnHiddenWidth {
- get { return firstDisplayedScrollingColumnHiddenWidth; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public int FirstDisplayedScrollingColumnIndex {
- get { return firstDisplayedScrollingColumnIndex; }
- set { firstDisplayedScrollingColumnIndex = value; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public int FirstDisplayedScrollingRowIndex {
- get { return firstDisplayedScrollingRowIndex; }
- set { firstDisplayedScrollingRowIndex = value; }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public override Font Font {
- get { return base.Font; }
- set { base.Font = value; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public override Color ForeColor {
- get { return base.ForeColor; }
- set { base.ForeColor = value; }
- }
- public Color GridColor {
- get { return gridColor; }
- set {
- if (gridColor != value) {
- if (value == Color.Empty) {
- throw new ArgumentException("Cant set an Empty color.");
- }
- gridColor = value;
- OnGridColorChanged(EventArgs.Empty);
- }
- }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public int HorizontalScrollingOffset {
- get { return horizontalScrollingOffset; }
- set { horizontalScrollingOffset = value; }
- }
- [Browsable (false)]
- public bool IsCurrentCellDirty {
- get { return isCurrentCellDirty; }
- }
- [Browsable (false)]
- public bool IsCurrentCellInEditMode {
- get {
- if (currentCell == null) {
- return false;
- }
- return currentCell.IsInEditMode;
- }
- }
- [Browsable (false)]
- public bool IsCurrentRowDirty {
- get {
- if (!virtualMode)
- return IsCurrentCellDirty;
- QuestionEventArgs args = new QuestionEventArgs ();
- OnRowDirtyStateNeeded (args);
- return args.Response;
- }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public DataGridViewCell this [int columnIndex, int rowIndex] {
- get { return rows[rowIndex].Cells[columnIndex]; }
- set { rows[rowIndex].Cells[columnIndex] = value; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public DataGridViewCell this [string columnName, int rowIndex] {
- get {
- int columnIndex = -1;
- foreach (DataGridViewColumn col in columns) {
- if (col.Name == columnName) {
- columnIndex = col.Index;
- break;
- }
- }
- return this[columnIndex, rowIndex];
- }
- set {
- int columnIndex = -1;
- foreach (DataGridViewColumn col in columns) {
- if (col.Name == columnName) {
- columnIndex = col.Index;
- break;
- }
- }
- this[columnIndex, rowIndex] = value;
- }
- }
- [DefaultValue (true)]
- public bool MultiSelect {
- get { return multiSelect; }
- set {
- if (multiSelect != value) {
- multiSelect = value;
- OnMultiSelectChanged(EventArgs.Empty);
- }
- }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public int NewRowIndex {
- get {
- if (!AllowUserToAddRows || ColumnCount == 0) {
- return -1;
- }
- return rows.Count - 1;
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public new Padding Padding {
- get { return Padding.Empty; }
- set { }
- }
- internal DataGridViewHeaderCell PressedHeaderCell {
- get { return pressed_header_cell; }
- }
- [Browsable (true)]
- [DefaultValue (false)]
- public bool ReadOnly {
- get { return readOnly; }
- set {
- if (readOnly != value) {
- readOnly = value;
- OnReadOnlyChanged(EventArgs.Empty);
- }
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- [DefaultValue (0)]
- public int RowCount {
- get { return rows.Count; }
- set {
- if (value < 0) {
- throw new ArgumentException("RowCount must be >= 0.");
- }
- if (value < 1 && AllowUserToAddRows) {
- throw new ArgumentException("RowCount must be >= 1 if AllowUserToAddRows is true.");
- }
- if (dataSource != null) {
- throw new InvalidOperationException("Cant change row count if DataSource is set.");
- }
- if (value < rows.Count) {
- int removeRangeEndIndex = rows.Count - 1;
- if (AllowUserToAddRows)
- removeRangeEndIndex--; // do not remove editing row
- int removeRangeStartIndex = value - 1;
- if (AllowUserToAddRows)
- removeRangeStartIndex--; // remove an extra row before/instead of the editing row
- for (int i = removeRangeEndIndex; i > removeRangeStartIndex; i--)
- rows.RemoveAt(i);
- } else if (value > rows.Count) {
- // If we need to add rows and don't have any columns,
- // we create one column
- if (ColumnCount == 0) {
- System.Diagnostics.Debug.Assert (rows.Count == 0);
- ColumnCount = 1; // this creates the edit row
- if (VirtualMode) {
- // update edit row height
- UpdateRowHeightInfo (0, false);
- }
- }
- List<DataGridViewRow> newRows = new List<DataGridViewRow> (value - rows.Count);
- for (int i = rows.Count; i < value; i++)
- newRows.Add ((DataGridViewRow) RowTemplateFull);
- rows.AddRange (newRows.ToArray());
- }
- }
- }
- [Browsable (true)]
- [DefaultValue (DataGridViewHeaderBorderStyle.Raised)]
- public DataGridViewHeaderBorderStyle RowHeadersBorderStyle {
- get { return rowHeadersBorderStyle; }
- set {
- if (rowHeadersBorderStyle != value) {
- rowHeadersBorderStyle = value;
- OnRowHeadersBorderStyleChanged(EventArgs.Empty);
- }
- }
- }
- [AmbientValue (null)]
- public DataGridViewCellStyle RowHeadersDefaultCellStyle {
- get { return rowHeadersDefaultCellStyle; }
- set {
- if (rowHeadersDefaultCellStyle != value) {
- rowHeadersDefaultCellStyle = value;
- OnRowHeadersDefaultCellStyleChanged(EventArgs.Empty);
- }
- }
- }
- [DefaultValue (true)]
- public bool RowHeadersVisible {
- get { return rowHeadersVisible; }
- set {
- if (rowHeadersVisible != value) {
- rowHeadersVisible = value;
- Invalidate ();
- }
- }
- }
- [Localizable (true)]
- public int RowHeadersWidth {
- get { return rowHeadersWidth; }
- set {
- if (rowHeadersWidth != value) {
- if (value < 4) {
- throw new ArgumentOutOfRangeException("RowHeadersWidth",
- "Row headers width cant be less than 4.");
- }
- if (value > 32768 ) {
- throw new ArgumentOutOfRangeException("RowHeadersWidth",
- "Row headers width cannot be more than 32768.");
- }
- rowHeadersWidth = value;
- OnRowHeadersWidthChanged(EventArgs.Empty);
-
- if (rowHeadersVisible)
- Invalidate ();
- }
- }
- }
- [RefreshProperties (RefreshProperties.All)]
- [DefaultValue (DataGridViewRowHeadersWidthSizeMode.EnableResizing)]
- public DataGridViewRowHeadersWidthSizeMode RowHeadersWidthSizeMode {
- get { return rowHeadersWidthSizeMode; }
- set {
- if (rowHeadersWidthSizeMode != value) {
- if (!Enum.IsDefined(typeof(DataGridViewRowHeadersWidthSizeMode), value)) {
- throw new InvalidEnumArgumentException("Value is not valid DataGridViewRowHeadersWidthSizeMode.");
- }
- rowHeadersWidthSizeMode = value;
- OnRowHeadersWidthSizeModeChanged(new DataGridViewAutoSizeModeEventArgs(false));
- }
- }
- }
- [Browsable (false)]
- public DataGridViewRowCollection Rows {
- get { return rows; }
- }
- public DataGridViewCellStyle RowsDefaultCellStyle {
- get { return rowsDefaultCellStyle; }
- set {
- if (rowsDefaultCellStyle != value) {
- rowsDefaultCellStyle = value;
- OnRowsDefaultCellStyleChanged(EventArgs.Empty);
- }
- }
- }
- // RowTemplate is just the row, it does not contain Cells
- [Browsable (true)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Content)]
- public DataGridViewRow RowTemplate {
- get {
- if (rowTemplate == null)
- rowTemplate = new DataGridViewRow ();
- return rowTemplate;
- }
- set {
- rowTemplate = value;
- }
- }
- // Take the RowTemplate, clone it, and add Cells
- // Note this is not stored, so you don't need to Clone it
- internal DataGridViewRow RowTemplateFull {
- get {
- DataGridViewRow row = (DataGridViewRow) RowTemplate.Clone ();
-
- for (int i = row.Cells.Count; i < Columns.Count; i++) {
- DataGridViewCell template = columns [i].CellTemplate;
-
- if (template == null)
- throw new InvalidOperationException ("At least one of the DataGridView control's columns has no cell template.");
-
- row.Cells.Add ((DataGridViewCell) template.Clone ());
- }
-
- return row;
- }
- }
- internal override bool ScaleChildrenInternal {
- get { return false; }
- }
- [DefaultValue (ScrollBars.Both)]
- [Localizable (true)]
- public ScrollBars ScrollBars {
- get { return scrollBars; }
- set {
- if (!Enum.IsDefined(typeof(ScrollBars), value)) {
- throw new InvalidEnumArgumentException("Invalid ScrollBars value.");
- }
- ////////////////////////////////////////////////////////////
- /// *** InvalidOperationException ***
- /// The System.Windows.Forms.DataGridView is unable to
- /// scroll due to a cell change that cannot be committed
- /// or canceled.
- ///////////////////////////////////////////////////////////
- scrollBars = value;
- PerformLayout ();
- Invalidate ();
- }
- }
- [Browsable (false)]
- public DataGridViewSelectedCellCollection SelectedCells {
- get {
- DataGridViewSelectedCellCollection selectedCells = new DataGridViewSelectedCellCollection();
- foreach (DataGridViewRow row in rows) {
- foreach (DataGridViewCell cell in row.Cells) {
- if (cell.Selected) {
- selectedCells.InternalAdd(cell);
- }
- }
- }
- return selectedCells;
- }
- }
- [Browsable (false)]
- public DataGridViewSelectedColumnCollection SelectedColumns {
- get
- {
- DataGridViewSelectedColumnCollection result = new DataGridViewSelectedColumnCollection ();
- if (selectionMode != DataGridViewSelectionMode.FullColumnSelect && selectionMode != DataGridViewSelectionMode.ColumnHeaderSelect)
- return result;
- result.InternalAddRange (selected_columns);
- return result;
- }
- }
- [Browsable (false)]
- public DataGridViewSelectedRowCollection SelectedRows {
- get {
- DataGridViewSelectedRowCollection result = new DataGridViewSelectedRowCollection (this);
-
- if (selectionMode != DataGridViewSelectionMode.FullRowSelect && selectionMode != DataGridViewSelectionMode.RowHeaderSelect)
- return result;
-
- result.InternalAddRange (selected_rows);
- return result;
- }
- }
- [Browsable (true)]
- [DefaultValue (DataGridViewSelectionMode.RowHeaderSelect)]
- public DataGridViewSelectionMode SelectionMode {
- get { return selectionMode; }
- set {
- if (!Enum.IsDefined (typeof(DataGridViewSelectionMode), value))
- throw new InvalidEnumArgumentException ("Value is not valid DataGridViewSelectionMode.");
- if (value == DataGridViewSelectionMode.ColumnHeaderSelect || value == DataGridViewSelectionMode.FullColumnSelect)
- foreach (DataGridViewColumn col in Columns)
- if (col.SortMode == DataGridViewColumnSortMode.Automatic)
- throw new InvalidOperationException (string.Format ("Cannot set SelectionMode to {0} because there are Automatic sort columns.", value));
-
- selectionMode = value;
- }
- }
- [DefaultValue (true)]
- public bool ShowCellErrors {
- get { return showCellErrors; }
- set { showCellErrors = value; }
- }
- [DefaultValue (true)]
- public bool ShowCellToolTips {
- get { return showCellToolTips; }
- set { showCellToolTips = value; }
- }
- [DefaultValue (true)]
- public bool ShowEditingIcon {
- get { return showEditingIcon; }
- set { showEditingIcon = value; }
- }
- [DefaultValue (true)]
- public bool ShowRowErrors {
- get { return showRowErrors; }
- set { showRowErrors = value; }
- }
- [Browsable (false)]
- public DataGridViewColumn SortedColumn {
- get { return sortedColumn; }
- }
- [Browsable (false)]
- public SortOrder SortOrder {
- get { return sortOrder; }
- }
- [DefaultValue (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public bool StandardTab {
- get { return standardTab; }
- set { standardTab = value; }
- }
- [Bindable (false)]
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Never)]
- public override string Text {
- get { return base.Text; }
- set { base.Text = value; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public DataGridViewHeaderCell TopLeftHeaderCell {
- get {
- if (topLeftHeaderCell == null) {
- topLeftHeaderCell = new DataGridViewTopLeftHeaderCell ();
- topLeftHeaderCell.SetDataGridView (this);
- }
- return topLeftHeaderCell;
- }
- set {
- if (topLeftHeaderCell == value)
- return;
- if (topLeftHeaderCell != null)
- topLeftHeaderCell.SetDataGridView (null);
- topLeftHeaderCell = value;
- if (topLeftHeaderCell != null)
- topLeftHeaderCell.SetDataGridView (this);
- }
- }
- [Browsable (false)]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- public Cursor UserSetCursor {
- get { return userSetCursor; }
- }
- [Browsable (false)]
- [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
- public int VerticalScrollingOffset {
- get { return verticalScrollingOffset; }
- }
- [MonoTODO ("VirtualMode is not supported.")]
- [EditorBrowsable (EditorBrowsableState.Advanced)]
- [DefaultValue (false)]
- public bool VirtualMode {
- get { return virtualMode; }
- set { virtualMode = value; }
- }
- internal Control EditingControlInternal {
- get {
- return editingControl;
- }
- set {
- if (value == editingControl)
- return;
- if (editingControl != null) {
- // Can't use Controls.Remove (editingControls), because that method
- // is overriden to not remove the editing control.
- DataGridView.DataGridViewControlCollection ctrls = Controls as DataGridView.DataGridViewControlCollection;
- if (ctrls != null) {
- ctrls.RemoveInternal (editingControl);
- } else {
- Controls.Remove (editingControl);
- }
- editingControl.Dispose();
- }
-
-
- if (value != null) {
- value.Visible = false;
- Controls.Add (value);
- }
- editingControl = value;
- }
- }
- static object AllowUserToAddRowsChangedEvent = new object ();
- static object AllowUserToDeleteRowsChangedEvent = new object ();
- static object AllowUserToOrderColumnsChangedEvent = new object ();
- static object AllowUserToResizeColumnsChangedEvent = new object ();
- static object AllowUserToResizeRowsChangedEvent = new object ();
- static object AlternatingRowsDefaultCellStyleChangedEvent = new object ();
- static object AutoGenerateColumnsChangedEvent = new object ();
- static object AutoSizeColumnModeChangedEvent = new object ();
- static object AutoSizeColumnsModeChangedEvent = new object ();
- static object AutoSizeRowsModeChangedEvent = new object ();
- static object BackgroundColorChangedEvent = new object ();
- static object BorderStyleChangedEvent = new object ();
- static object CancelRowEditEvent = new object ();
- static object CellBeginEditEvent = new object ();
- static object CellBorderStyleChangedEvent = new object ();
- static object CellClickEvent = new object ();
- static object CellContentClickEvent = new object ();
- static object CellContentDoubleClickEvent = new object ();
- static object CellContextMenuStripChangedEvent = new object ();
- static object CellContextMenuStripNeededEvent = new object ();
- static object CellDoubleClickEvent = new object ();
- static object CellEndEditEvent = new object ();
- static object CellEnterEvent = new object ();
- static object CellErrorTextChangedEvent = new object ();
- static object CellErrorTextNeededEvent = new object ();
- static object CellFormattingEvent = new object ();
- static object CellLeaveEvent = new object ();
- static object CellMouseClickEvent = new object ();
- static object CellMouseDoubleClickEvent = new object ();
- static object CellMouseDownEvent = new object ();
- static object CellMouseEnterEvent = new object ();
- static object CellMouseLeaveEvent = new object ();
- static object CellMouseMoveEvent = new object ();
- static object CellMouseUpEvent = new object ();
- static object CellPaintingEvent = new object ();
- static object CellParsingEvent = new object ();
- static object CellStateChangedEvent = new object ();
- static object CellStyleChangedEvent = new object ();
- static object CellStyleContentChangedEvent = new object ();
- static object CellToolTipTextChangedEvent = new object ();
- static object CellToolTipTextNeededEvent = new object ();
- static object CellValidatedEvent = new object ();
- static object CellValidatingEvent = new object ();
- static object CellValueChangedEvent = new object ();
- static object CellValueNeededEvent = new object ();
- static object CellValuePushedEvent = new object ();
- static object ColumnAddedEvent = new object ();
- static object ColumnContextMenuStripChangedEvent = new object ();
- static object ColumnDataPropertyNameChangedEvent = new object ();
- static object ColumnDefaultCellStyleChangedEvent = new object ();
- static object ColumnDisplayIndexChangedEvent = new object ();
- static object ColumnDividerDoubleClickEvent = new object ();
- static object ColumnDividerWidthChangedEvent = new object ();
- static object ColumnHeaderCellChangedEvent = new object ();
- static object ColumnHeaderMouseClickEvent = new object ();
- static object ColumnHeaderMouseDoubleClickEvent = new object ();
- static object ColumnHeadersBorderStyleChangedEvent = new object ();
- static object ColumnHeadersDefaultCellStyleChangedEvent = new object ();
- static object ColumnHeadersHeightChangedEvent = new object ();
- static object ColumnHeadersHeightSizeModeChangedEvent = new object ();
- static object ColumnMinimumWidthChangedEvent = new object ();
- static object ColumnNameChangedEvent = new object ();
- static object ColumnRemovedEvent = new object ();
- static object ColumnSortModeChangedEvent = new object ();
- static object ColumnStateChangedEvent = new object ();
- static object ColumnToolTipTextChangedEvent = new object ();
- static object ColumnWidthChangedEvent = new object ();
- static object CurrentCellChangedEvent = new object ();
- static object CurrentCellDirtyStateChangedEvent = new object ();
- static object DataBindingCompleteEvent = new object ();
- static object DataErrorEvent = new object ();
- static object DataMemberChangedEvent = new object ();
- static object DataSourceChangedEvent = new object ();
- static object DefaultCellStyleChangedEvent = new object ();
- static object DefaultValuesNeededEvent = new object ();
- static object EditingControlShowingEvent = new object ();
- static object EditModeChangedEvent = new object ();
- static object GridColorChangedEvent = new object ();
- static object MultiSelectChangedEvent = new object ();
- static object NewRowNeededEvent = new object ();
- static object ReadOnlyChangedEvent = new object ();
- static object RowContextMenuStripChangedEvent = new object ();
- static object RowContextMenuStripNeededEvent = new object ();
- static object RowDefaultCellStyleChangedEvent = new object ();
- static object RowDirtyStateNeededEvent = new object ();
- static object RowDividerDoubleClickEvent = new object ();
- static object RowDividerHeightChangedEvent = new object ();
- static object RowEnterEvent = new object ();
- static object RowErrorTextChangedEvent = new object ();
- static object RowErrorTextNeededEvent = new object ();
- static object RowHeaderCellChangedEvent = new object ();
- static object RowHeaderMouseClickEvent = new object ();
- static object RowHeaderMouseDoubleClickEvent = new object ();
- static object RowHeadersBorderStyleChangedEvent = new object ();
- static object RowHeadersDefaultCellStyleChangedEvent = new object ();
- static object RowHeadersWidthChangedEvent = new object ();
- static object RowHeadersWidthSizeModeChangedEvent = new object ();
- static object RowHeightChangedEvent = new object ();
- static object RowHeightInfoNeededEvent…
Large files files are truncated, but you can click here to view the full file