У меня проблема с моим DataGridView.DataSource, и это заняло у меня много времени на решение этой проблемы. Ниже приведен код:
string[] queryWords = singleQuery.Split(' '); // Split the query words according the "space" character
// Compose the SQL select query
string selectClause = @"SELECT ID, CategoryID, Name, UnitID, Price, QuantityAgen, QuantityBanjer, QuantityMalalayang, QuantitySorong FROM Product WHERE ";
// Add the where clauses inside the SQL select query
for (int i = 0; i < queryWords.Length; i++)
{
selectClause += "(Name LIKE '%" + queryWords[i] + "%')";
if (i < queryWords.Length - 1)
selectClause += " AND ";
}
// Initiate the query and get the appropriate results
IEnumerable<SumberRejekiProgram.Code.Product> resultQuery = dbProduct.ExecuteQuery<SumberRejekiProgram.Code.Product>(selectClause);
var finalResult = from p in resultQuery
select new { Name = p.Name, Price = p.Price, Unit = p.Unit.Name };
// Bind the DataGridView according to the final query result in resultQuery variable
dgvSearch.DataSource = resultQuery;
Когда я отлаживаю код, и resultQuery, и finalResult содержат результаты, которые я хочу. Тем не менее, когда я устанавливаю «dgvSearch.DataSource», результаты не появляются в строке, даже если я попробовал и dgvSearch.DataSource = resultQuery
и dgvSearch.DataSource = finalResult
. DataGridView просто пуст (кроме столбца).
После выполнения кода я отлаживаю "dgvSearch", чтобы убедиться, что DataSource работает правильно и работает. Все результаты находятся внутри DataSource, но почему-то DataGridView не будет отображать его, хотя я назвал dgvSearch.show()
.
Может ли кто-нибудь помочь мне в этом? Я чувствую, что хочу убить себя T_T.
Заранее большое спасибо.