Disabling combo scrolling in RadGridView

3 posts, 1 answers
  1. James
    James avatar
    3 posts
    Member since:
    Apr 2016

    Posted 18 Apr 2016 Link to this post


    We have a situation where we have the RadGridView with ComboBoxes in two of its columns. There are two Text columns as well.

    If the mouse is kept over a combo box column and the mouse scroll is used, the Grid scroll bar does not fire but the combo box changes selection. However if the mouse is kept above a Text column cell and the mouse scroll is used, the grid scroll bar works as usual. We don't want this disparity. We want the grid scroll bar to work even if the mouse is kept over the radcombobox column cell.

    Another challenge is the version of Telerik.Windows.Controls.GridView.dll that we have in our project is 2011.1.0419.35.

    I have tried to play with by hooking the OnPreviewMouseWheel event of the RadComboBox that resides in the grid cell. But seems it still makes the combo box scroll.


    01.private void CboPreference_OnPreviewMouseWheel(object sender, MouseWheelEventArgs e)
    02.       {
    03.           var comboBox = sender as RadComboBox;
    04.           if (comboBox != null)
    05.           {
    06.               if (grdTraderPreferences != null)
    07.               {
    08.                   //Copy over event arg members and raise it
    09.                   var newarg = new MouseWheelEventArgs(e.MouseDevice, e.Timestamp, e.Delta)
    10.                   {
    11.                       RoutedEvent = RadGridView.PreviewMouseWheelEvent,
    12.                       Source = sender
    13.                   };
    15.                   grdTraderPreferences.RaiseEvent(newarg);
    16.               }
    17.           }
    18.       }

    Any help will be appreciated.




  2. Answer
    Dilyan Traykov
    Dilyan Traykov avatar
    1073 posts

    Posted 20 Apr 2016 Link to this post

    Hello James,

    RadComboBox has an IsMouseWheelEnabled property indicating whether the instance will respond to MouseWheel events when the dropdown is not open.

    If you're using a custom CellEditTemplate with a RadComboBox in it, you can simply set this property to False.

    If instead, you're using a GridViewComboBoxColumn, you can create a new EditorStyle for it, like so:

    <Style TargetType="telerik:RadComboBox" x:Key="CustomEditorStyle">
        <Setter Property="IsMouseWheelEnabled" Value="False" />
    <telerik:GridViewComboBoxColumn EditorStyle="{StaticResource CustomEditorStyle}" />

    Please let me know if this approach would work for you.

    Dilyan Traykov
    Do you need help with upgrading your AJAX, WPF or WinForms project? Check the Telerik API Analyzer and share your thoughts.
  3. James
    James avatar
    3 posts
    Member since:
    Apr 2016

    Posted 20 Apr 2016 in reply to Dilyan Traykov Link to this post

    That helped - Thanks!
Back to Top