C# 通过使用id';s
我有一个组合框,里面有会员、付款、访问等值 我们可以这样做C# 通过使用id';s,c#,winforms,combobox,C#,Winforms,Combobox,我有一个组合框,里面有会员、付款、访问等值 我们可以这样做 if(combobox.text = "members") { \\do something... } if(combobox.text = "visits") { \\do something... } if(combobox.text = "paymen
if(combobox.text = "members")
{
\\do something...
}
if(combobox.text = "visits")
{
\\do something...
}
if(combobox.text = "payments")
{
\\do something...
}
我们可以这样做,但我不想像这样硬编码
有没有其他方法可以将组合框值与其id一起使用,而不使用上面提到的文本
有人能帮上忙吗?…另一种方法是用有值和文本的项填充组合框,例如,这些项可以是数据库中一个表的两列 通过这种方式,在加载项时没有硬编码数据,您可以通过编辑该数据库表中的数据来加载更多项(或只是不同的项) 如果项目数量非常有限,您还可以创建一个枚举,并使用枚举值验证当前选择的值,并对上面显示的代码进行一些修改。请参见此处: 您可以将任何对象与文本一起附加到每个项目,然后获取所选项目,提取对象,将其转换为您知道的类型,然后从中获取数据
哦,你可能需要考虑一些建议:在C代码中填充组合框,而不是手工在设计器中。
如果你的值是从数据源或某物中得到的话,有更好的方法。由于这些命令看起来像静态命令,不会有太多变化,因此可能没有更干净的方法来执行
我同意@Manatherin的评论,你应该在switch语句中这样做。我将包含引发异常的and else子句,这样您就可以知道是否键入了值文本或其他内容 这取决于如何填充组合框值,是否可以包含填充组合框的代码?或者你是通过设计器输入的值吗?我是通过设计器输入的值只是一个建议,使用switch语句可能更容易阅读,而不是很多。如果在旁注中,你的注释斜杠是向后的。