【问题标题】:Drop down selection control下拉选择控件
【发布时间】:2011-09-29 15:45:59
【问题描述】:

我有一个不错的小用户控件,它是一个可拖动的框,里面有一些文本。控件的右侧是一个可点击的小箭头,当点击它时,我想从控件的右侧。

我已经有了一个 PopoutWindow 类,它继承了 ToolStripDropDown,它允许我弹出一个新控件以从该箭头的右侧“弹出”,用法如下。

  MyPopoutWindow options = new MyPopoutWindow ();
  PopoutWindow popout = new PopoutWindow(options);
  popout.Show(arrowButton, arrowButton.Width, 0);

MyPopoutWindow 是(当前)一个自定义 UserControl,我希望它与 ComboBox 或 ToolStripMenu 的弹出主体相同。

有谁知道我可以使用或继承来获得这种效果的 Winforms 控件吗?我试过使用 ToolStripDropDownMenuToolStripDropDown 但我得到以下异常:

Top-level control cannot be added to a control.

谢谢,

【问题讨论】:

标签: c# winforms


【解决方案1】:

解决方案实际上非常明显(并非总是如此!)。正如我在问题中提到的,我尝试使用 ToolStripDropDown 但这引发了异常。

为了解决这个问题,我让MyPopoutWindow 继承ToolStripDropDown,但在构造函数中,将TopLevel 属性设置为false。这行得通!

public MyPopoutWindow()
{
    TopLevel = false;
}

【讨论】:

    猜你喜欢
    • 2012-08-20
    • 2011-01-22
    • 1970-01-01
    • 2011-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-23
    相关资源
    最近更新 更多