DataGridView의 특정 Column에 자동완성 기능을 추가할 때는 아래와 같이 진행하시면 됩니다.

 

특정 Column이 셀 편집을 시작한다면, 내부의 TextBox Control의 AutoCompleteMode를 지정하면 됩니다.

 

 

 

 

 

AutoCompleteStringCollection auto = new AutoCompleteStringCollection();

 
string[] hints = new string[] { "Hint0""Hint1""Hint2""Hint3" };
auto.AddRange(hints);
 
this.dgvView.EditingControlShowing += 
       new DataGridViewEditingControlShowingEventHandler(dgvView_EditingControlShowing);

 

 

 

 

void dgvView_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)

{
    int column = this.dgvView.CurrentCell.ColumnIndex;
    string headerText = this.dgvView.Columns[column].Name;
 
    if (headerText.Equals("chName"))
    {
        TextBox tb = e.Control as TextBox;
 
        if (tb != null)
        {
            tb.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
            tb.AutoCompleteCustomSource = auto;
            tb.AutoCompleteSource = AutoCompleteSource.CustomSource;
        }
 
    } 
}

 

 

+ Recent posts