gpt4 book ai didi

c# - 如何在编辑时在 Windows 应用程序中显示基于组合框选择的控件?

转载 作者:行者123 更新时间:2023-11-30 17:28:46 24 4
gpt4 key购买 nike

Value type 1

Value Type 2

我正在使用 Windows 应用程序并为添加和编辑模式创建了一个表单。问题出在添加上,它工作正常,但在编辑时,控件不会根据组合框选择显示。根据我的组合框选择更改事件,我隐藏了控件。但是我的组合框没有选择值,也没有触发更改事件。代码是:

//Edit Mode        

public CompanyAddEdit(MainForm form, string id)
{
InitializeComponent();
passedForm = form;
var cmbList = BindCompanyType();
isEdit = true;
xmlDocPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Companies.xml");
xDocument = XDocument.Load(xmlDocPath);
Id = Convert.ToInt32(id);
XElement company = xDocument.Descendants("Company").FirstOrDefault(p => p.Element("Id").Value == Id.ToString());

if (company != null)
{
var type = company.Element("DataSourceType").Value;
cmbbx_companyType.SelectedItem = type;
}
}

我正在使用这种方法绑定(bind)组合框:

private Array BindCompanyType()
{
var companyTypeList = Enum.GetValues(typeof(CompanyType));
cmbbx_companyType.DataSource = companyTypeList;
return companyTypeList;
}

我该如何解决这个问题?任何帮助将不胜感激。

最佳答案

因此,您已经使用 CompanyType 枚举类型的项目填充了组合框。所以所选项目也应该是同一类型。希望您从 company.Element("DataSourceType").Value; 获取一个字符串,这样您就可以像下面这样修改代码:

cmbbx_companyType.SelectedItem = Enum.Parse(typeof(CompanyType),type);        

请试一试,让我知道它是否解决了问题。

关于c# - 如何在编辑时在 Windows 应用程序中显示基于组合框选择的控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52108662/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com