Open Expand ComboBox or click a button from Code

In a WPF project I’had to open the ComboBox by pressing the near icon.

To solve this request I’ll use this code:

ComboBoxAutomationPeer peer = new ComboBoxAutomationPeer(myComboBox);
IExpandCollapseProvider provider = peer.GetPattern(PatternInterface.ExpandCollapse) as IExpandCollapseProvider;
provider.Expand();

In WPF and Silverlight there is a class AutomationPeer very usefull to simulate the user action on the control.
Usually the right class is named [Control]AutomationPeer

So for the combobox the right name is ComboBoxAutomationPeer and for a button ButtonAutomationPeer

If you need to press a button invoking it by code:

ButtonAutomationPeer peer = new ButtonAutomationPeer(myButton);
IInvokeProvider provider = peer.GetPattern(PatternInterface.Invoke) as IInvokeProvider;
provider.Invoke();
Annunci

Informazioni su Andrea Regoli

Project Manager .Net Developer WPF WP7 Asp.Net c# javascript ajax SQL sharepoint
Questa voce è stata pubblicata in c#, Silverlight, WP7 e contrassegnata con , , , . Contrassegna il permalink.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...