当我们按下下拉菜单时,自动填充组合框占用整页大小。需要将其限制为前 5 个值。不做查询更改

Auto Fill combo box is taking full page of size when we press drop down. Need to limit it to top 5 values. without doing query change

我需要一点帮助来处理自动填充组合框,它会显示公司拥有的所有车辆。 请检查屏幕截图和代码,并指导我如何将显示项目限制在 5 个以内,以便组合框不会占据整个页面的大小。 我不想更改查询中的任何内容,我想从代码或任何可以限制它的可用 属性 设置它(注意:MaximumDropDownItems 已经是 8,但它仍然需要整页)。下拉菜单必须放在组合框的底部,而不是组合框的上方。

谢谢

屏幕截图

自动填充代码如下:

Dim v As New VehicleMast
        dt = v.getvhcl("select Vehicle_NO from MastVehicle")

        If com_vhcl_no.InvokeRequired Then
            com_vhcl_no.BeginInvoke(New loadVehicleDel(AddressOf loadVehicleSub), cmd, dt)
        Else
            For Each q In dt.Rows
                com_vhcl_no.Items.Add(q("Vehicle_NO"))
            Next

            With com_vhcl_no
                '.DataSource = dt
                .DisplayMember = "Vehicle_NO"
                .ValueMember = "Vehicle_NO"
                .AutoCompleteMode = AutoCompleteMode.Suggest
                .AutoCompleteSource = AutoCompleteSource.ListItems
            End With

        End If

您可以设置 ComboBox 的高度,它只能显示几条记录,否则所有记录都可以滚动

ComboBox1.DropDownList.Height

您可以让 5 个项目对所有项目可见,方法如下:

ComboBox1.DropDownList.Height = ComboBox1.Items.Height * 5

ComboBox1.MaxDropDownItems = 5;

设置 .MaxDropDownItems 属性: https://msdn.microsoft.com/query/dev14.query?appId=Dev14IDEF1&l=EN-US&k=k(System.Windows.Forms.ComboBox.MaxDropDownItems);k(System.Windows.Forms.ComboBox);k(VS.Properties);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5)&rd=true