FlexGrid for WinForms
ChangeEdit イベント (C1FlexGridBase)
使用例 

C1.Win.FlexGrid.8 アセンブリ > C1.Win.FlexGrid 名前空間 > C1FlexGridBase クラス : ChangeEdit イベント
編集モードで、エディタの内容が変更された後に発生します。
シンタックス
'宣言
 
Public Event ChangeEdit As System.EventHandler
public event System.EventHandler ChangeEdit
解説

このイベントは、グリッドが編集モードになっていて、エディタの内容が変更されたときに発生します。これは、ユーザーがエディタに入力するか、新しい項目をドロップダウンリストで選択した場合です。

このイベントが発生したときに、新しいエディタの内容はグリッドセルにはまだ適用されていません。 Editorプロパティを使用して、新しい内容をチェックできます。

使用例

次のコードは、 ChangeEdit イベントを使用して入力内容に応じて行の高さを変更します。

Private Sub frmAutoSizeEdit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  fg.Styles.Normal.WordWrap = True
End Sub
          
Private Sub fg_AfterEdit(ByVal sender As Object, ByVal e As C1.Win.FlexGrid.RowColEventArgs) Handles fg.AfterEdit
  fg.AutoSizeRow(e.Row)
End Sub
          
Private Sub fg_ChangeEdit(ByVal sender As Object, ByVal e As System.EventArgs) Handles fg.ChangeEdit
  ' テキストの高さを測定します。
  Dim g As Graphics = fg.CreateGraphics()
  Dim sf As StringFormat = New StringFormat()
  Dim wid As Integer = fg.Cols(fg.Col).WidthDisplay - 2
  Dim text As String = fg.Editor.Text
  Dim sz As SizeF = g.MeasureString(text, fg.Font, wid, sf)
  
  ' 必要に応じて行の高さを調整します。
  Dim row As C1.Win.FlexGrid.Row = fg.Rows(fg.Row)
  If sz.Height + 4 > row.HeightDisplay Then
    row.HeightDisplay = CType(sz.Height, Integer) + 4
  End If
End Sub
private void frmAutoSizeEdit_Load(object sender, System.EventArgs e)
{
  fg.Styles.Normal.WordWrap = true;
}
          
private void fg_AfterEdit(object sender, C1.Win.FlexGrid.RowColEventArgs e)
{
  fg.AutoSizeRow(e.Row);
}
          
private void fg_ChangeEdit(object sender, System.EventArgs e)
{
  using(Graphics g = fg.CreateGraphics())
  {
    // テキストの高さを測定します。
    StringFormat sf = new StringFormat();
    int wid = fg.Cols[fg.Col].WidthDisplay - 2;
    string text = fg.Editor.Text;
    SizeF sz = g.MeasureString(text, fg.Font, wid, sf);
    
    // 必要に応じて行の高さを調整します。
    C1.Win.FlexGrid.Row row = fg.Rows[fg.Row];
    if(sz.Height + 4 > row.HeightDisplay)
    {
      row.HeightDisplay = (int)sz.Height + 4;
    }
  }
}
参照

C1FlexGridBase クラス
C1FlexGridBase メンバ