4.0J以前のテキストコントロールのShowHistoryプロパティ相当の機能を8.0Jで実装するには?

文書番号 : 38296     文書種別 : 使用方法     登録日 : 2015/05/27     最終更新日 : 2015/05/27
文書を印刷する
対象製品
InputMan for Windows Forms 8.0J
詳細
InputMan for Windows Forms 8.0JではテキストコントロールにShowHistoryプロパティの機能は用意されていませんが、オートコンプリート機能を応用することで同等の動作を実現することが可能です。
次のサンプルコードは、オートコンプリート機能を利用し、履歴リストを作成する例です。

[Visual Basic]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    ' 補完文字列として、AutoCompleteCustomSourceプロパティを使用します。
    GcTextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource
    GcTextBox1.AutoCompleteMode = AutoCompleteMode.Suggest
End Sub

Private Sub GcTextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles GcTextBox1.KeyDown
    ' Enterキー押下時に履歴に追加します。
    If e.KeyCode = Keys.Enter Then
        If GcTextBox1.Text <> "" Then
            GcTextBox1.AutoCompleteCustomSource.Add(GcTextBox1.Text)
        End If
    End If
End Sub

[C#]
private void Form1_Load(object sender, EventArgs e)
{
    // 補完文字列として、AutoCompleteCustomSourceプロパティを使用します。
    gcTextBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
    gcTextBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
}

private void gcTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    //Enterキー押下時に履歴に追加します。
    if (e.KeyCode == Keys.Enter)
    {
        if(gcTextBox1.Text != "")
        {
            gcTextBox1.AutoCompleteCustomSource.Add(gcTextBox1.Text);
        }
    }
}
関連情報