Copyright © GrapeCity inc. All rights reserved.
True DBGrid for WinForms
カスタム エディタの使用
実行時の操作 > グリッド エディタのカスタマイズ > カスタム エディタの使用

組み込みエディタでは多くの柔軟性と機能が提供されていますが、場合によっては外部コントロールを特別なエディタとして使用できます。たとえば、数値入力用ドロップダウン電卓を提供する C1NumericEdit コントロール、複数列リストから選択するためのエディタ、またはビジネスオブジェクトの編集用に自分で記述した特別なコントロールを使用できます。

注意C1NumericEdit コントロールは Input for WinForms コントロールの1つです。C1NumericEdit コントロールの詳細については、Input for WinForms のマニュアルから入手可能)を参照してください。

基本の Control クラスから派生するコントロールはすべて、基本グリッドエディタとして使用できます。IC1EmbeddedEditor インターフェースを実装するコントロールは、グリッドとのより優れた統合とより高度な機能を提供できます。IC1EmbeddedEditor インターフェースの詳細については、Editor プロパティを参照してください。

コントロールをカスタムエディタとして使用するには、Editor プロパティを使用し、このコントロールのインスタンスをグリッド列に関連付けるだけで済みます。コードでこれを行うには、Editor プロパティを使用します。それ以降は、コントロールはグリッドによって自動的に使用されます。

たとえば、C1NumericEdit コントロールをグリッドエディタとして使用するには、以下の手順に従います。

  1. C1TrueDBGrid コントロールと C1NumericInput コントロールをフォームに追加します。
  2. C1NumericInput コントロールの場合、プロパティウィンドウ内か、Form_Load イベントに次のコードを追加することで、BorderStyle プロパティを None に、Visible プロパティを False に設定します。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    ' カスタムエディタをセットアップします。
    Me.C1NumericEdit1.BorderStyle = BorderStyle.None
    Me.C1NumericEdit1.Visible = False
    

    C# コードの書き方

    C#
    コードのコピー
    // カスタムエディタをセットアップします。
    this.c1NumericEdit1.BorderStyle = BorderStyle.None;
    this.c1NumericEdit1.Visible = false;
    
  3. Form_Load イベントで、カスタムエディタをグリッド列に割り当てます。

    Visual Basic コードの書き方

    Visual Basic
    コードのコピー
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
        ' カスタムエディタをグリッドに割り当てます。
        Me.C1TrueDBGrid1.Columns(0).Editor = Me.C1NumericEdit1
    End Sub
    

    C# コードの書き方

    C#
    コードのコピー
    private void Form_Load(object sender, EventArgs e)
    {
     
        // カスタムエディタをグリッドに割り当てます。
        this.c1TrueDBGrid1.Columns[0].Editor = this.c1NumericEdit1;
    }
    

プロジェクトを実行し、最初の列のいくつかの値を編集します。グリッドが C1NumericEdit コントロールをどのように配置して初期化してセル値を編集できるようにするかに注意してください。セルの編集を完了したら、別のセルをクリックするか、[Tab]キーを押して次のセルに移動します。新しい値がこのセルに適用されていることに注意してください。

関連トピック