使用Windows窗體和LINQ to Sql,我將DataGridview綁定到Products Table,我將其添加到Form 1 Textbox中以輸入搜索到的文本。 我想知道如何根據輸入的文本來定位datagridview以查找給定的ProductName。 在這裏,我不想過濾行,我只想重新定位數據網格的每個字符輸入後,所使用的代碼:如何將datagridview定位到搜索到的文本輸入
private void textBox1_TextChanged(object sender, EventArgs e)
{
var searchValue = textBox1.Text.Trim().ToUpper();
var qry = (from p in dc.Products
where p.ProductName.ToUpper().StartsWith(searchValue)
select p).ToList();
int itemFound = productBindingSource.Find("ProductName", searchValue);
productBindingSource.Position = itemFound;
}
代碼執行給下一個錯誤:System.NotSupportedException是在LIGNE未處理:
int itemFound = productBindingSource.Find("ProductName", searchValue);
有什麼想法嗎?
是否有多個項目在與輸入的文本開始的datagridview?這可能會導致例外。另外,'查找'功能只是看看列是否以提供的值開始? – 2012-07-27 16:26:08
在表單加載事件中,datagrid中填充了Products表的全部內容。 – 2012-07-27 16:36:47
正確,但查找是否返回多個結果? – 2012-07-27 18:29:16