Winforms - 多选下拉列表

Ala*_*anR 18 .net c# winforms

我正在购买下拉列表控件,允许我选择多个项目.类似于CheckedListbox的东西,但是在下拉列表表单中(我不希望它占据屏幕的一大块).在这一点上,我非常相信内置的.NET没有这样的控件.

注意这是Winforms,而不是ASP.NET.有什么建议?

Jim*_*amb 23

在CodeProject上查看这个项目:

  • 最后我放弃了这个复选框 - 它没有我想象的那么好(在识别鼠标点击,自动完成等方面).我决定使用弹出对话框.仍然,绝对值得知道这存在. (4认同)

Ste*_*kes 8

还有一个问题:

上面的解决方案是正确的,以解决第一个问题,它需要两次单击才能进入复选框列表,但是,当您单击控件退出它时,这会引入一个新问题,它会保留焦点,您必须双击才能转到另一个控制.我能够使用以下代码解决此问题:

在CheckBoxComboBox.cs中添加以下覆盖:

    protected override void OnClick(EventArgs e)
    {
        base.OnClick(e);
        this.Parent.Focus();
    }
Run Code Online (Sandbox Code Playgroud)

根据Rob P.的答案和这个答案,它不会关注任何点击事件.