我有一个使用以下代码绑定(bind)到枚举的组合框:
cmb.ItemsSource = Enum.GetValues(typeof(DATABASE_TYPES)).Cast<DATABASE_TYPES>();
其中 DATABASE_TYPES 是:
public enum DATABASE_TYPES
{
JDataStore, Access, SQLServer, H2, PostGresSQL, MySQL
};
我有一些与枚举值之一匹配的 xml:
<property name="Database.Main.Type"
type="databaseType"
default="JDataStore"
permissions="superuser">
</property>
我正在尝试以编程方式将组合框的所选项目设置为 xml 中的默认值。
我已经尝试过:
cmb.SelectedItem = propertyNode.Attributes["default"].Value;
但这不起作用。
有人可以建议一下吗?
最佳答案
您需要将字符串转换为枚举实例:
cmb.SelectedItem = (DATABASE_TYPES)Enum.Parse(typeof(DATABASE_TYPES), propertyNode.Attributes["default"].Value);
关于c# - 以编程方式设置 WPF 组合框中的选定项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9838039/