示例#1
0
		protected virtual void OnColumnHeadersHeightSizeModeChanged (DataGridViewAutoSizeModeEventArgs e)
		{
			DataGridViewAutoSizeModeEventHandler eh = (DataGridViewAutoSizeModeEventHandler)(Events [ColumnHeadersHeightSizeModeChangedEvent]);
			if (eh != null)
				eh (this, e);
		}
示例#2
0
		protected virtual void OnRowHeadersWidthSizeModeChanged (DataGridViewAutoSizeModeEventArgs e)
		{
			DataGridViewAutoSizeModeEventHandler eh = (DataGridViewAutoSizeModeEventHandler)(Events [RowHeadersWidthSizeModeChangedEvent]);
			if (eh != null) eh (this, e);
		}
        /// <include file='doc\DataGridView.uex' path='docs/doc[@for="DataGridView.OnColumnHeadersHeightSizeModeChanged"]/*' />
        protected virtual void OnColumnHeadersHeightSizeModeChanged(DataGridViewAutoSizeModeEventArgs e)
        {
            if (this.columnHeadersHeightSizeMode == DataGridViewColumnHeadersHeightSizeMode.AutoSize)
            {
                if (!e.PreviousModeAutoSized)
                {
                    // Save current column headers height for later reuse
                    this.cachedColumnHeadersHeight = this.ColumnHeadersHeight;
                }
                AutoResizeColumnHeadersHeight(true /*fixedRowHeadersWidth*/, true /*fixedColumnsWidth*/);
            }
            else if (e.PreviousModeAutoSized)
            {
                this.ColumnHeadersHeight = this.cachedColumnHeadersHeight;
            }

            DataGridViewAutoSizeModeEventHandler eh = this.Events[EVENT_DATAGRIDVIEWCOLUMNHEADERSHEIGHTSIZEMODECHANGED] as DataGridViewAutoSizeModeEventHandler;
            if (eh != null && !this.dataGridViewOper[DATAGRIDVIEWOPER_inDispose] && !this.IsDisposed)
            {
                eh(this, e);
            }
        }
        /// <include file='doc\DataGridView.uex' path='docs/doc[@for="DataGridView.OnRowHeadersWidthSizeModeChanged"]/*' />
        protected virtual void OnRowHeadersWidthSizeModeChanged(DataGridViewAutoSizeModeEventArgs e)
        {
            if (this.rowHeadersWidthSizeMode != DataGridViewRowHeadersWidthSizeMode.EnableResizing &&
                this.rowHeadersWidthSizeMode != DataGridViewRowHeadersWidthSizeMode.DisableResizing)
            {
                if (!e.PreviousModeAutoSized)
                {
                    // Save current row headers width for later reuse
                    this.cachedRowHeadersWidth = this.RowHeadersWidth;
                }
                AutoResizeRowHeadersWidth(this.rowHeadersWidthSizeMode,
                                          true /*fixedColumnHeadersHeight*/,
                                          true /*fixedRowsHeight*/);
            }
            else if (e.PreviousModeAutoSized)
            {
                this.RowHeadersWidth = this.cachedRowHeadersWidth;
            }

            EventHandler eh = this.Events[EVENT_DATAGRIDVIEWROWHEADERSWIDTHSIZEMODECHANGED] as EventHandler;
            if (eh != null && !this.dataGridViewOper[DATAGRIDVIEWOPER_inDispose] && !this.IsDisposed)
            {
                eh(this, e);
            }
        }
        /// <summary>
        /// Extends BeginInvoke so that when a state object is not needed, null does not need to be passed.
        /// <example>
        /// datagridviewautosizemodeeventhandler.BeginInvoke(sender, e, callback);
        /// </example>
        /// </summary>
        public static IAsyncResult BeginInvoke(this DataGridViewAutoSizeModeEventHandler datagridviewautosizemodeeventhandler, Object sender, DataGridViewAutoSizeModeEventArgs e, AsyncCallback callback)
        {
            if(datagridviewautosizemodeeventhandler == null) throw new ArgumentNullException("datagridviewautosizemodeeventhandler");

            return datagridviewautosizemodeeventhandler.BeginInvoke(sender, e, callback, null);
        }
        /// <include file='doc\DataGridView.uex' path='docs/doc[@for="DataGridView.OnAutoSizeRowsModeChanged"]/*' />
        protected virtual void OnAutoSizeRowsModeChanged(DataGridViewAutoSizeModeEventArgs e)
        {
            if (this.autoSizeRowsMode == DataGridViewAutoSizeRowsMode.None)
            {
                // restore cached rows thickness
                RestoreRowsCachedThickness();
            }
            else
            {
                if (!e.PreviousModeAutoSized)
                {
                    // Save the rows thickness for later reuse
                    // Note that only visible rows are affected, contrary to columns in OnAutoSizeColumnsModeChanged where all columns are affected.
                    for (int rowIndex = this.Rows.GetFirstRow(DataGridViewElementStates.Visible);
                        rowIndex != -1;
                        rowIndex = this.Rows.GetNextRow(rowIndex, DataGridViewElementStates.Visible))
                    {
                        // this call may unshare the row.
                        int rowHeight = this.Rows.SharedRow(rowIndex).GetHeight(rowIndex);
                        this.Rows.SharedRow(rowIndex).CachedThickness = rowHeight;
                    }
                }
                AdjustShrinkingRows(this.autoSizeRowsMode, true /*fixedWidth*/, true /*internalAutosizing*/);
            }

            DataGridViewAutoSizeModeEventHandler eh = this.Events[EVENT_DATAGRIDVIEWAUTOSIZEROWSMODECHANGED] as DataGridViewAutoSizeModeEventHandler;
            if (eh != null && !this.dataGridViewOper[DATAGRIDVIEWOPER_inDispose] && !this.IsDisposed)
            {
                eh(this, e);
            }
        }
 protected virtual void OnRowHeadersWidthSizeModeChanged(DataGridViewAutoSizeModeEventArgs e);
 protected virtual void OnColumnHeadersHeightSizeModeChanged(DataGridViewAutoSizeModeEventArgs e);
 protected virtual void OnAutoSizeRowsModeChanged(DataGridViewAutoSizeModeEventArgs e);
 protected virtual void OnColumnHeadersHeightSizeModeChanged(DataGridViewAutoSizeModeEventArgs e)
 {
     if (this.columnHeadersHeightSizeMode == DataGridViewColumnHeadersHeightSizeMode.AutoSize)
     {
         if (!e.PreviousModeAutoSized)
         {
             this.cachedColumnHeadersHeight = this.ColumnHeadersHeight;
         }
         this.AutoResizeColumnHeadersHeight(true, true);
     }
     else if (e.PreviousModeAutoSized)
     {
         this.ColumnHeadersHeight = this.cachedColumnHeadersHeight;
     }
     DataGridViewAutoSizeModeEventHandler handler = base.Events[EVENT_DATAGRIDVIEWCOLUMNHEADERSHEIGHTSIZEMODECHANGED] as DataGridViewAutoSizeModeEventHandler;
     if (((handler != null) && !this.dataGridViewOper[0x100000]) && !base.IsDisposed)
     {
         handler(this, e);
     }
 }
 protected virtual void OnAutoSizeRowsModeChanged(DataGridViewAutoSizeModeEventArgs e)
 {
     if (this.autoSizeRowsMode == DataGridViewAutoSizeRowsMode.None)
     {
         this.RestoreRowsCachedThickness();
     }
     else
     {
         if (!e.PreviousModeAutoSized)
         {
             for (int i = this.Rows.GetFirstRow(DataGridViewElementStates.Visible); i != -1; i = this.Rows.GetNextRow(i, DataGridViewElementStates.Visible))
             {
                 int height = this.Rows.SharedRow(i).GetHeight(i);
                 this.Rows.SharedRow(i).CachedThickness = height;
             }
         }
         this.AdjustShrinkingRows(this.autoSizeRowsMode, true, true);
     }
     DataGridViewAutoSizeModeEventHandler handler = base.Events[EVENT_DATAGRIDVIEWAUTOSIZEROWSMODECHANGED] as DataGridViewAutoSizeModeEventHandler;
     if (((handler != null) && !this.dataGridViewOper[0x100000]) && !base.IsDisposed)
     {
         handler(this, e);
     }
 }