当用户在文本框中键入内容时,我使用ToolStripDropDown创建一个自动完成弹出窗口。我希望弹出窗口仅显示在文本框的右下角。但是当文本框的位置接近屏幕的右边缘或下边缘时,弹出窗口将显示在其他位置。有谁可以帮我?
来自ToolStripDropDown的派生类中的代码:
public void Show(Presenters.IMainView c, Point position)
{
base.Show(c as Control, position, ToolStripDropDownDirection.BelowRight);
}主视图中的代码:
private void TextBoxAutocomplete_TextChanged(object sender, EventArgs e)
{
_mPopup.Show((IMainView)this, ((TextBox)sender).Location);
}我希望弹出窗口的行为像一个普通的窗体,其位置不受屏幕或工作区边界的限制,但不从父窗体窃取焦点
发布于 2013-01-29 21:51:41
我决定使用另一种更简单的方法。我没有使用ToolStripDropDown的派生类,而是使用从UserControl派生的类,使它不会从其父对象中窃取焦点(参见this question)
https://stackoverflow.com/questions/14581988
复制相似问题