如何为每个组合框元素分配一个整数值 - c#

时间:2015-05-04 11:29:07

标签: c#

我正在制作计算能源使用量的计划。我有一个家用电器组合框。选择设备时,我希望为变量分配额定功率,然后计算总能耗。我该怎么办呢?我应该双击组合框并在方法中写一些适当的代码吗?

这是一个Windows窗体应用程序。我所做的就是使用设计视图从工具箱中制作组合框。然后,我通过单击Properties> Items填充组合框。 comboxbox包含一个包含小时(00,01,02,03等)的下拉列表,另一个包含分钟(00,15,30,45)。我想从组合框中获取值并用它们进行计算。

2 个答案:

答案 0 :(得分:2)

所以我试着做出你要求的内容

这里我有表单加载事件我只是设置小时和分钟组合框的数据源

private void Form1_Load(object sender, EventArgs e)
{
        var hours = new int[] {1,2,3,4,5,6,7,8,9,10,11,12};
        var mins = new int[] { 0, 15, 45};
        hoursComboBox.DataSource = hours;
        minsComboBox.DataSource = mins;
}

创建powerCalculationMethod

private int CalculatePower(int hours,int mins)
    {
        //do calculation
        int calc = 0;
        return calc;
    }

然后可能在选择组合框中的值后,您可以单击按钮并单击其单击事件将组合框的值转换为整数,因为这是方法所需的参数并进行计算

private void button1_Click(object sender, EventArgs e)
    {
        //set label's text to the calculated power
        //convert the values of the comboboxes to integers so that you could do calculations with them
        //and because the calculatepower method is expecting ints
        //tostring at end to set labels text to a string
        label1.Text = CalculatePower(Convert.ToInt32(this.hoursComboBox.SelectedValue), Convert.ToInt32(this.minsComboBox.SelectedValue)).ToString();
    }

也许这可以让你了解如何完成你想要做的事情

答案 1 :(得分:0)

我认为最难的部分是将分钟数从基于60的数字转换为基于10的数字 这是一个全球解决方案:

public class Activity
{
    [Key]
    public int ActivityId { get; set; }

    public HierarchyId ActivityPath { get; set; }

    public string Name { get; set; }
}