首页 > 解决方案 > WPF:通过 MouseWheel 滚动组合框有效,但滚动条单击不起作用

问题描述

我陷入了 WPF 的奇怪情况Combo-box,通过鼠标滚轮滚动非常有效,但是当单击滚动条的鼠标向下箭头时,项目隐藏,尝试拖动滚动条时也会发生同样的情况。

我正在使用下面的XAML代码

<ComboBox  Name="cmbPageNumber" >
     <ComboBox.ItemContainerStyle>
         <Style TargetType="ComboBoxItem">
               <EventSetter Event="PreviewMouseDown" Handler="item_PreviewMouseDown"/>
         </Style>
     </ComboBox.ItemContainerStyle>
</ComboBox>    

  void item_PreviewMouseDown(object sender, MouseButtonEventArgs e)
    {
        ComboBoxItem cmbitem = sender as ComboBoxItem;
        cmbitem.IsSelected = true;
        string value = cmbitem.Content.ToString();

        OVTreeItem item = CurrentTreeItemForPaging;
        if (item != null && item.PageCounts >= Convert.ToInt32(value))
            item.GotoPage = Convert.ToInt32(value);

        PagingInfo(item);
        EnableDisablePagingButtons();
        this.cmbPageNumber.IsDropDownOpen = false;
        e.Handled = true;
    }

要填充组合框,我使用以下代码

       for (int i = 1; i <= item.PageCounts; i++)
            {
                cmbPageNumber.Items.Add(i);

            }

有趣的是,当我右键单击combo-box并再次重新打开时,然后鼠标单击并通过拖动滚动工作。

请帮我。

标签: wpfcomboboxwpf-controls

解决方案


推荐阅读