Eine Anwendung kann ein Ownerdrawn - Kombinationsfeld zu übernehmen für das Zeichnen der Listenelemente erstellen. Das übergeordnete Fenster oder Dialogfeld Feld ein Ownerdrawn-Kombinationsfelds ( Besitzer) empfängt WM_DRAWITEM Nachrichten, wenn ein Teil des Kombinationsfelds muss lackiert werden. Ein Ownerdrawn-Kombinationsfeld kann Informationen außer und neben Text-Zeichenfolgen auflisten. Ownerdrawn-Kombinationsfelder können beliebigen Typs sein. Allerdings kann das Edit-Steuerelement in einem einfachen oder Dropdown-Kombinationsfeld nur Text anzeigen während der Besitzer das Auswahlfeld in einem Dropdown-Listenfeld zeichnet.
Der Besitzer eines Ownerdrawn-Kombinationsfelds muss die WM_DRAWITEM Nachricht verarbeiten. Diese Nachricht wird gesendet, wenn ein Teil des Kombinationsfelds neu gezeichnet werden muss. Der Besitzer kann andere Nachrichten, je für das Kombinationsfeld angegebenen Stile verarbeiten müssen.
Eine Anwendung kann ein Ownerdrawn-Kombinationsfeld erstellen, durch die Angabe des CBS_OWNERDRAWFIXED oder CBS_OWNERDRAWVARIABLE-Stil. Wenn alle Listenelemente im Kombinationsfeld die gleiche Höhe, z. B. Zeichenfolgen oder Symbole werden, kann eine Anwendung den CBS_OWNERDRAWFIXED Stil verwenden. Wenn Listenelemente von unterschiedlicher Höhe, Bitmaps unterschiedlicher Größe sind, kann z. B. eine Anwendung verwenden im CBS_OWNERDRAWVARIABLE-Stil.
Der Besitzer eines Ownerdrawn-Kombinationsfelds kann eine WM_MEASUREITEM -Nachricht an die Abmessungen der Listenelemente im Kombinationsfeld festlegen verarbeiten. Wenn die Anwendung im Kombinationsfeld erstellt mithilfe den CBS_OWNERDRAWFIXED-Stil, sendet das System die WM_MEASUREITEM-Nachricht nur einmal. Die vom Besitzer angegebenen Dimensionen sind für alle Listenelemente verwendet. Wenn der CBS_OWNERDRAWVARIABLE-Stil verwendet wird, sendet das System eine WM_MEASUREITEM Nachricht für jedes Listenelement hinzugefügt, dem Kombinationsfeld. Der Eigentümer kann bestimmen, oder legen Sie die Höhe eines Listenelements jederzeit mithilfe der CB_GETITEMHEIGHT und CB_SETITEMHEIGHT Nachrichten.
Wenn in einem Ownerdrawn-Kombinationsfeld angezeigte Informationen Text enthält, eine Anwendung kann verfolgen den Text für jedes Listenelement der durch das CBS_HASSTRINGS-Format angibt. Kombinationsfelder mit dem CBS_SORT Stil werden basierend auf diesen Text sortiert. Wenn ein Kombinationsfeld sortiert ist und nicht des CBS_HASSTRINGS Stils, muss der Eigentümer die WM_COMPAREITEM Nachricht verarbeiten.
In einem Ownerdrawn-Kombinationsfeld Besitzer muss verfolgen Listenelemente enthalten Informationen, die andere als oder zusätzlich zu Text der. Eine bequeme Möglichkeit dazu ist den Griff in die Informationen als Elementdaten speichern. Weitere Informationen zum Elementdaten finden Sie unter Zugeordnete Daten mit Listenelementen. Der Eigentümer frei Datenobjekte in einem Kombinationsfeld Elemente zugeordnet, kann die WM_DELETEITEM -Nachricht verarbeiten, um.
Ein Beispiel für ein Ownerdrawn-Kombinationsfeld finden Sie unter Erstellen eines Kombinationsfeldes Owner-Drawn.