Sie müssen das Steuerelement PART_EditableTextBox
aus der Steuerelementvorlage der Kombinationsbox abrufen. Der einfachste Weg wäre, OnApplyTemplate
in einer Ableitung von ComboBox
und verwenden Sie diese Ableitung dann, wo auch immer Sie benötigen ein Kombinationsfeld mit diesem erweiterten Verhalten.
Sobald Sie das Textfeld haben, können Sie die Caret-Position festlegen, SelectionStart
an den Ort, an dem das Caret angezeigt werden soll, und legen Sie SelectionLength
auf Null setzen.
Ein noch einfacherer Weg, wenn Sie nicht mit abgeleiteten Klassen umgehen wollen und nur die Einfügemarke für eine beliebige ComboBox setzen wollen, ist, wenn Sie das Textfeld aus der Vorlage holen (ähnlich der akzeptierten Antwort) brauche es und aktualisiere dann einfach die Caret-Position.
%Vor%Tags und Links wpf c# user-interface