将列表框和combox作为一个参数传递

时间:2017-01-24 11:18:13

标签: c# combobox listbox parameter-passing

我从列表框或组合框中删除了一些东西。我有两个相同的功能....

    public static void removeFromListBox(ListBox ListToRmvthings)//remove items from a Listbox general purpose
    {
        int NumberOfIdx = ListToRmvthings.Items.Count;
        if (NumberOfIdx > 0)
        {
            for (int inc = NumberOfIdx - 1; inc >= 0; --inc)
            {
                ListToRmvthings.Items.RemoveAt(inc);
            }
        }
    }
    public static void removeFromComboBox(ComboBox ComboToRmvthings)//remove items from a Combobox general purpose
    {
        int NumberOfIdx = ComboToRmvthings.Items.Count;
        if (NumberOfIdx > 0)
        {
            for (int inc = NumberOfIdx - 1; inc >= 0; --inc)
            {
                ComboToRmvthings.Items.RemoveAt(inc);
            }
        }
    }

如何只创建一个函数...如果我尝试传递对象,则不会识别items.count ....

非常感谢!!

1 个答案:

答案 0 :(得分:1)

他们都来自ListControl。但有人指出,Items属性不在该基类中 - 两个控件都有自己的Items属性和它们自己的类型来表示它们。

所以似乎没有比提供两种方法更好的方法了。方法很简单,所以试图通过类型测试和强制来适应两种类型只会使问题复杂化。