在安装了Net Framework 3.5 sp1的wpf应用程序中设置SelectedItem programmaticaly时,我感到很困惑.我仔细阅读了大约一百个帖子\主题但仍然困惑((我的xaml:
<ComboBox name="cbTheme">
<ComboBoxItem>Sunrise theme</ComboBoxItem>
<ComboBoxItem>Sunset theme</ComboBoxItem>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)
如果我在其中一个项目中添加IsSelected ="True"属性 - 它不会设置此项目.为什么?而我在代码中尝试不同,仍然无法设置所选项目:
cbTheme.SelectedItem=cbTheme.Items.GetItemAt(1); //dosn't work
cbTheme.Text = "Sunrise theme"; //dosn't work
cbTheme.Text = cbTheme.Items.GetItemAt(1).ToString();//dosn't work
cbTheme.SelectedValue = ...//dosn't work
cbTheme.SelectedValuePath = .. //dosn't work
//and even this dosn't work:
ComboBoxItem selcbi = (ComboBoxItem)cbTheme.Items.GetItemAt(1);//or selcbi = new ComboBoxItem
cbTheme.SelectedItem = selcbi;
Run Code Online (Sandbox Code Playgroud)
SelectedItem不是readonly属性,为什么它不工作?我认为这应该是微软的问题,而不是我的问题.或者我错过了什么?我尝试使用ListBox,并且所有工作都可以正常使用相同的代码,我可以设置选择,获取选择等等......那么我可以用ComboBox做什么?也许一些技巧???