一個DataGrid我有一個充滿對象DataGridView
,現在我要爲這個DataGrid
搜索/過濾功能。我試圖使用一個文本框,您可以輸入一個文本字符串,並在我的腦海中想要匹配這個字符串對所有的對象字段(例如,如果對象是電子郵件,我想匹配字符串與主題字段) DataGrid。如何篩選與對象C#
如果是到DataGrid.DataSource
聲明如下任何幫助(不用擔心的方法,問題是過濾器/搜索功能):
var newMess = LM.GetNewMessages();
if (newMess.Count > 0)
{
for (int i = 0; i < newMess.Count; i++)
{
LM.InboxTemp.Insert(0, newMess[i]);
}
}
BindingSource source = new BindingSource();
source.DataSource = LM.InboxTemp; //List with Objects
dgNewMess.DataSource = source;
dgNewMess.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgNewMess.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgNewMess.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
dgNewMess.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
我都已經充滿了對象(電子郵件)的列表,這個列表連接到DataGrid。我不想插入新的對象到列表中,我只是希望能夠顯示過濾的對象,取決於哪些搜索條件(從文本框)。我是否需要爲過濾對象使用不同的數據源?或者我可以使用相同的嗎? – MrProgram
@ user1789325您在示例代碼中所做的操作是將電子郵件插入列表中,而不進行過濾。是否要過濾已分配給GridView的數據?順便說一句,它是WinForms還是什麼? –
是的,它是WinForms。沒錯,DataGrid中已經充滿了電子郵件從列表 – MrProgram