Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
555
Two Clicks for Editing XamGrid ComboBoxColumn
posted

1) I need two clicks to open my ComboBoxColumn. How can I achieve a single-click-edit-mode? -> attached Project

2) Can I somehow force a Cell to update the Editor? Who calls ResolveDisplayElement... 

XamGridProb3.zip
  • 34810
    Verified Answer
    Offline posted

    Hello Karl,

    To enter edit mode on a combo box column on a single click I would recommend writing a Style for CellControl and using an EventSetter to handle the PreviewMouseDown event. In the event handler, I used an if statement to check if CellControl.Content is a ComboBox and if ((ComboBox)CellControl.Content).IsDropDownOpen == false. If these conditions check out, I use a Dispatcher to invoke an action to get the combo box’s drop down to open.

    I have attached an updated version of the sample you sent to demonstrate the above. The Style is in zumControl.xaml and the handler is in the Constructor region of the zumControl.

    Regarding your question about ResolveDisplayElement, I am unsure what you mean by forcing the editor to update, but in the source code for the xamGrid there is a method called ResolveDisplayElementInternal which is called by the CellControl in the AttachContent, EnsureContent, and RemoveEditorFromControl methods. This ResolveDisplayElementInternal returns this.ResolveDisplayElement where “this” is the ColumnContentProviderBase.

    The source code for our controls can be obtained by accessing your account on the website. Go to Keys & Downloads, click on the product name that you wish to obtain the source code for, and look under the source code tab to download it.

    Please let me know if you have any other questions or concerns on this matter.

    Sincerely,
    Andrew
    Developer Support I
    Infragistics Inc.
    www.infragistics.com/support

    XamGridProb.zip