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

flseospp  于 2023-01-26  发布在  其他
关注(0)|答案(1)|浏览(152)

我应该通过在我的WinForms应用程序中从ComboBox派生一个类来创建一个自定义的ComboBox。我以前从未这样做过,也无法从Google中找到许多好的例子。
我需要派生一个自定义组合框,以便可以将自定义组合框类型绑定到特定对象。
这是我目前掌握的情况。

自定义组合框.cs

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

namespace MAPClient {
    class MAPCodeComboBox : ComboBox {

    }
}

我有一些具体问题:
1.我需要重写哪些方法?
1.如何在VS2010设计器模式下使用它?

6psbrbz9

6psbrbz91#

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

Map组合框.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() { }
    }
}

Map代码对象集合.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
        }
    }
}

相关问题