我正在尝试更改组合框选择时更新标签,以便它显示查询中的计数。除非我指定了一个字符串where子句,它不会让我使用combobox.SelectedValue中的值,它返回一个零。
where (o.ShipCountry == "USA")
我一直在努力:
private void cmbCountry_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var ord = (from o in db.Orders
where (o.ShipCountry == cmbCountry.SelectedValuePath)
select o.ShipCountry).Count();
lblOrders.Content = ord;
}
这是一个帮助的问题屏幕。零应该是组合框指定的特定国家/地区的所有订单的计数。
非常感谢任何帮助!
答案 0 :(得分:0)
我实际上意识到了我的问题! 我用来填充ComboBox的LINQ查询使用匿名类型来引用所选的列。我把它命名为“cc”。
var cmb = (from c in db.Customers
orderby c.Country descending
select new { cc = c.Country }).Distinct();
这意味着绑定路径为Binding Path=SelectedValue.cc
var cmb = (from c in db.Customers
orderby c.Country descending
select c.Country).Distinct();
通过删除匿名类型,我可以访问组合框的SelectedValue。