Question

Je suis censé créer un ComboBox personnalisé en dérivant une classe de ComboBox dans mon application WinForms. Je ne l'ai jamais fait cela avant et pas en mesure de trouver de nombreux bon exemple de Google.

  

Je suis obligé de tirer un combobox personnalisé afin que je puisse faire la limite de type combobox personnalisé à un objet particulier.

Pouvez-vous s'il vous plaît me diriger dans la bonne direction?

est ce que j'ai jusqu'à présent.

CustomComboBox.cs

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

namespace MAPClient {
    class MAPCodeComboBox : ComboBox {

    }
}

J'ai quelques questions spécifiques:

  1. Quelles méthodes dois-je remplacer?
  2. Comment puis-je utiliser dans mon mode concepteur VS2010?
Était-ce utile?

La solution

D'accord, j'ai enfin ce qui suit pour un ComboBox-borné type personnalisé. Permettez-moi de savoir si je fais quelque chose de mal.

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
        }
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top