我试图改变我的组合框的值,当前面的组合框被选中,但它不工作。我需要设置我的组合框的值取决于其他组合框的选择
这里是我的代码:
当窗体加载我填第一ComboBox
:
List<Tax> listOfActiveTaxes = TaxesController.SelectAll();
int IndexOfTax = TaxesController.SelectAll().FindIndex(a => a.Value == DefaultTaxValue);
cmbTaxes.ItemsSource = listOfActiveTaxes;
cmbTaxes.DisplayMemberPath = "Description";
cmbTaxes.SelectedValue = "Id";
cmbTaxes.SelectedIndex = IndexOfTax;
,我需要改变这个cmbTaxes
的值,如果招行上述选择(CmbGroups),所以当中巴以上选择下一个我做的事:
private void cmbGroups_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
var selectedGroup = (Group)cmbGroups.SelectedItem;
if (selectedGroup != null && selectedGroup.Id > 0)
{
//Not changing when I select any Group
cmbTaxes.SelectedItem = selectedGroup.Tax;
}
}
'cmbTaxes.SelectedValue = “ID”;''是对Id'一个属性的名称,或财产的价值?如果它是一个属性的* name *,你想要的是'cmbTaxes.SelectedValuePath =“Id”;'另外,请考虑dymanoid的建议在XAML中使用绑定来完成。这将是非常简单和直接的方式。 –
不是很重要的问题,但无论如何:为什么你不使用任何'绑定',而是直接在代码隐藏中设置属性?我们处于WPF世界... – dymanoid
@ mm8列表 listOfActiveTaxes = TaxesController.SelectAll(); –