/// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void rtbTitle_Leave(object sender, EventArgs e) { DataGridViewColumn myColumn = this.m_SortedColumnList[this.m_SelectedColumnIndex]; ColumnHeaderEditEventArgs myArgs = new ColumnHeaderEditEventArgs(myColumn, this.rtbTitle.Text.Trim()); if (this.EndingEdit != null) { this.EndingEdit(this, myArgs); if (myArgs.Cancel) { this.rtbTitle.Focus(); return; } } this.rtbTitle.Visible = false; if (this.rtbTitle.Text.Trim().Length > 0) { if (myColumn.HeaderText != this.rtbTitle.Text.Trim()) { myColumn.HeaderText = this.rtbTitle.Text.Trim(); } } if (this.EndEdit != null) { this.EndEdit(this, myArgs); } }
/// <summary> /// /// </summary> private void ShowHeaderEdit() { if (this.BeginEdit != null) { ColumnHeaderEditEventArgs myArgs = new ColumnHeaderEditEventArgs(this.m_SortedColumnList[this.m_SelectedColumnIndex], ""); BeginEdit(this, myArgs); if (myArgs.Cancel) { return; } } int intColumnRelativeLeft = 0; int intFirstColumnLeft = (this.m_TargetControl.RowHeadersVisible ? this.m_TargetControl.RowHeadersWidth + 1 : 1); int intTargetX = this.m_TargetControl.Location.X, intTargetY = this.m_TargetControl.Location.Y, intTargetWidth = this.m_TargetControl.Width; intColumnRelativeLeft = GetColumnRelativeLeft(this.m_SelectedColumnIndex); if (intColumnRelativeLeft < this.m_ScrollValue) { this.rtbTitle.Location = new Point(intTargetX + intFirstColumnLeft, intTargetY + 1); if (intColumnRelativeLeft + this.m_SortedColumnList[this.m_SelectedColumnIndex].Width > this.m_ScrollValue) { this.rtbTitle.Width = intColumnRelativeLeft + this.m_SortedColumnList[this.m_SelectedColumnIndex].Width - this.m_ScrollValue; } else { this.rtbTitle.Width = 0; } } else { this.rtbTitle.Location = new Point(intColumnRelativeLeft + intTargetX - this.m_ScrollValue + intFirstColumnLeft, intTargetY + 1); if (this.rtbTitle.Location.X + this.rtbTitle.Width > intTargetX + intTargetWidth) { int intWidth = intTargetX + intTargetWidth - this.rtbTitle.Location.X; this.rtbTitle.Width = (intWidth >= 0 ? intWidth : 0); } else { this.rtbTitle.Width = this.m_SortedColumnList[this.m_SelectedColumnIndex].Width; } } this.rtbTitle.Height = this.m_TargetControl.ColumnHeadersHeight - 1; this.rtbTitle.Text = this.m_SortedColumnList[this.m_SelectedColumnIndex].HeaderText; this.rtbTitle.SelectAll(); this.rtbTitle.Visible = true; this.rtbTitle.Focus(); }