如何在每次选择新的comboboxItem时运行不同的方法

时间:2015-08-08 15:12:45

标签: c# wpf

您好,只是建立一个小型转换计算器,我添加了一个组合框,所以它不是那么杂乱,易于管理。我不会在我的组合框中添加一些选项,以便用户有不同的选项可供选择。但是我将使用转换计算构建一个小类,以便在组合框中选择不同的选项时,将调用正确的方法。我将添加一个代码片段来显示我正在使用的代码片段。我只是使用消息框,所以我知道它正在工作。任何代码片段都会很棒。

private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
   ComboBoxItem kilo = ((sender as ComboBox).SelectedItem as ComboBoxItem);
}

private double workOutKilo()
{
   double result = 2;
   return result;
}

2 个答案:

答案 0 :(得分:2)

为每个ComboBoxItem的Tag控件分配一个函数,在SelectionChanged事件中调用该函数。

答案 1 :(得分:1)

是的,如果您使用的是开关,则可能很容易通过您已有的代码进行选择。

我会建议这样的事情:

private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        ComboBoxItem kilo = ((sender as ComboBox).SelectedItem as ComboBoxItem);

        switch (kilo.ToString())
        {
            case "Kilo":
                //Method();
                break;
            //...
        }
    }

我想这可以胜任:

private void comboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        ComboBox kilo = (sender as ComboBox);
        int index = kilo.SelectedIndex;

        switch (kilo.ToString())
        {
            case "0":
                //Method();
                break;
            //...
        }
    }