从ComboBox派生的类型绑定自定义ComboBox

时间:2010-09-10 05:56:25

标签: c# winforms combobox custom-controls type-bounds

我应该通过在WinForms应用程序中从ComboBox派生类来创建自定义ComboBox。我之前从未这样做过,也无法从Google找到很多好的例子。

  

我需要派生一个自定义组合框,以便我可以将自定义组合框绑定到特定对象。

请你指点我正确的方向吗?

这是我到目前为止所做的。

CustomComboBox.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace MAPClient {
    class MAPCodeComboBox : ComboBox {

    }
}

我有一些具体的问题:

  1. 我需要覆盖哪些方法?
  2. 如何在VS2010设计模式下使用它?

1 个答案:

答案 0 :(得分:0)

好的,最后我有一个自定义类型绑定的ComboBox。如果我做错了,请告诉我。

MAPComboBox.cs

using System.Collections.Generic;
using System.Windows.Forms;

namespace MAPClient {
    class MAPComboBox : ComboBox {
        private MAPCodeObjectCollection MAPCodeItemCollection = null;

        new public MAPCodeObjectCollection Items {
            // override
        }

        new public List<MAPCode> DataSource {
            // override
        }

        public MAPCodeComboBox() { }
    }
}

MAPCodeObjectCollection.cs

using System.Windows.Forms;

namespace MAPClient {
    class MAPCodeObjectCollection : ComboBox.ObjectCollection {
        public MAPCodeObjectCollection(ComboBox owner) : base(owner) { }

        new public int Add(object item) {
            // override
        }

        new public void Insert(int index, object item) {
            // override
        }
    }
}