如何解决下拉列表超出panel边界的问题
窗体上放一个Panle,panel上放一个combobox, 发现combobox的下拉列表超出panle,被panle挡住了.
解决方法
通过修改窗体的Designer.cs文件,将combobox的容器改为窗体
但下拉内容还是被panel挡住了.
请教大家该如何解决.
[解决办法]
设置combobox的DropDownHeight 就可以控制下拉框的显示高度了
[解决办法]
那你可以可以设置计算combobox的DropDownHeight的高度啊
[解决办法]
Panle里面放的是listview?
设置combobox的DropDownHeight 就可以控制下拉框的显示高度了
其实我用的是一个listview, listview的高度根据其Item的数量来自动调整.
那你可以可以设置计算combobox的DropDownHeight的高度啊
我是用listview来写了一个自定义组件
listview没有dropdownheight属性
[解决办法]
用ToolStripControlHost试试
internal class AxDropDown<T> : ToolStripDropDown where T : Control, new()
{
private T _ctrl = null;
protected ToolStripControlHost _host = null;
public AxDropDown()
{
_ctrl = new T();
_ctrl.Width = 200;
_ctrl.Height = 200;
_host = new ToolStripControlHost(_ctrl);
_host.AutoSize = false;
_ctrl.SizeChanged += new EventHandler(_ctrl_SizeChanged);
this.Items.Add(_host);
}
public T DropControl
{
get { return _ctrl; }
}
private void _ctrl_SizeChanged(object sender, EventArgs e)
{
_host.Size = _ctrl.Size;
}
}
[解决办法]
最简单的是:ComboBox的父级在Form就可以。通过Left和Top进行定位。这样就不存在问题了。