c#ComboBox isSelected无法按预期工作

时间:2016-03-21 19:44:09

标签: c# win-universal-app

所以我试图在代码中更改ComboBox项的值IsSelected:

if (roamingSettings.Values.ContainsKey("tempValue"))
     {
         switch (roamingSettings.Values["tempValue"].ToString())
             {
                  case "Celsius":
                      Celsius.IsSelected = true;
                      break;
                  case "Kelvin":
                      Kelvin.IsSelected = true;
                      break;
                  case "Fahrenheit":
                      Fahrenheit.IsSelected = true;
                      break;
              }
    }

此代码在页面恢复时触发,逻辑工作正常,值传递到“OnNavigatedTo(NavigationEventArgs e)”方法(我从Microsoft UWP示例中借用了此方法),我可以看到e.Content具有正确的价值。但该项目未被选中。有任何想法吗?提前谢谢!

PS。 https://github.com/4c74356b41/UWP-04上的完整代码(这发生在settings.xaml和settings.xaml.cs上)

1 个答案:

答案 0 :(得分:3)

如果您不强制选择项目,但强制组合框选择项目怎么办?

这样的东西
switch (roamingSettings.Values["tempValue"].ToString())
         {
              case "Celsius":
                  ComboBox.selectedItem = Celsius;
                  break;
              case "Kelvin":
                  ComboBox.selectedItem = Kelvin;
                  break;
              case "Fahrenheit":
                  ComboBox.selectedItem = Fahrenheit;
                  break;
          }