我有一个列表视图列出来自数据库的类别名称我试图通过以下方法使用列表视图中的选择项来填充数据网格视图.......
if (lstviewCatgeories.SelectedItems.Count > 0 && lstviewCatgeories.SelectedItems[0].Group.Name == "catgories")
{
string text = lstviewCatgeories.SelectedItems[0].Text.ToString();
var categorywithids = (from categorytypes in dbentity.categories
where categorytypes.category_Name.Equals(text)
select categorytypes.category_Id).SingleOrDefault();
var productsbycounts = dbentity.products.GroupBy(x => x.product_Id).Where(a => a.FirstOrDefault().category_Id.Equals(categorywithids))
.Select(a => new
{
productid = a.Key,
productname = a.FirstOrDefault().product_Name,
productimage = a.FirstOrDefault().product_Image,
productdescription = a.FirstOrDefault().product_Description,
stockavailable = a.LongCount(),
productprice = a.FirstOrDefault().product_Price
});
productsall.DataSource = productsbycounts;
dgvAllproducts.DataSource = productsall;
dgvAllproducts.Columns[0].Visible = false;
dgvAllproducts.Columns[3].Visible = false;
DataGridViewButtonColumn column = new DataGridViewButtonColumn();
dgvAllproducts.Columns.Add(column);
column.FlatStyle = FlatStyle.System;
column.DefaultCellStyle.ForeColor = Color.ForestGreen;
column.DefaultCellStyle.Padding = new Padding(10, 48, 10, 48);
column.Text = "Buy";
column.HeaderText = "Buy";
column.UseColumnTextForButtonValue = true;
column.Name = "btnbuy";
}
为什么我无法看到产品,即使它们是与类别相关的产品.......
我在这一行productsall.DataSource = productsbycounts;
任何人都会对此有所帮助.......
答案 0 :(得分:1)
我不确定但是根据您提交的代码,您将dgvAllproducts的DataSource属性(我认为是DataGridView)分配给我认为是另一个控件(DataGridView),即:productsall。
dgvAllproducts.DataSource应该使用实际数据源设置,而不是使用DataGridView。对不起,如果我错过了什么。