2013-10-01 18 views
-2

我有一個datagrid,其中他們是一個名爲StudentName的字段......我有一個文本框,我必須通過他的名字找到學生,我爲此做了功能,但是我想要textbox auto建議並追加學生由存在於無法從數據庫中我該怎麼辦網格數據名稱........AutoSuggest附加在文本框從GridView數據?

我把所有的學生姓名下面一個IList的是我的代碼.........

try 
        { 
         IList<string> ObjAutoCompleteStringCollection = new List<string>();     
         for(int i=0;i<dgvStudentDetail.RowCount;i++) 
         { 
          ObjAutoCompleteStringCollection.Add(dgvStudentDetail.Rows[i].Cells["StudentName"].Value.ToString()); 
         } 
         txtStudentName.AutoCompleteCustomSource= 
         txtStudentName.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
         txtStudentName.AutoCompleteSource = AutoCompleteSource.CustomSource; 
        } 
        catch (Exception ex) 
        { 
        MessageBox.Show(ex.Message); 
        } 
+0

不錯的問題..我也有這個問題 –

+0

如果我的代碼不適合你,**你的問題其實很奇怪,它應該在你的項目**的其他地方。我發佈的代碼應該可以工作。您可以嘗試創建新的空白項目並對其進行測試。 –

+1

如果你想體面的答案,請適用體面的格式。 –

回答

0

你必須使用一個AutoCompleteStringCollection作爲Custom Source爲您自動完成來源:

try 
{ 
    txtStudentName.AutoCompleteCustomSource = new AutoCompleteStringCollection();     
    for(int i=0;i<dgvStudentDetail.RowCount;i++){ 
    txtStudentName.AutoCompleteCustomSource.Add(dgvStudentDetail.Rows[i].Cells["StudentName"].Value.ToString()); 
    } 
    txtStudentName.AutoCompleteMode = AutoCompleteMode.SuggestAppend; 
    txtStudentName.AutoCompleteSource = AutoCompleteSource.CustomSource; 
} 
catch (Exception ex) 
{ 
    MessageBox.Show(ex.Message); 
} 

備註:您的txtStudentName應該有Multiline = false(這是默認設置),否則AutoCompleting將不起作用。

+0

它不工作:-( – Coderz

+0

@SandeepSinghHada沒怎麼工作的呢?更多詳情PLZ –

+0

我做了上述相同,但文本框一點兒也不建議和追加任何事我該怎麼辦??? – Coderz

相關問題