【发布时间】:2017-10-14 08:56:18
【问题描述】:
当我关注文本框时,我需要隐藏一个列表框。如果我单击不同的控件或使用 Tab 键,则会发生文本框的“离开”事件。但是,如果我在表单内部单击任何可用空间,则不会发生聚焦。我看到了一种叫做鼠标捕获的东西,但我无法实现它。
我试过这个:
private void txtProduct_Enter(object sender, EventArgs e)
{
listProduct.Show();
UIElement el = (UIElement)sender;
el.CaptureMouse();
}
private void MouseClickedElseWhere(object sender, MouseEventArgs e)
{
if (e.Clicks >= 1)
{
txtProduct_Leave(sender, new EventArgs());
}
}
private void txtProduct_Leave(object sender, EventArgs e)
{
listProduct.Hide();
}
但显然它显示错误。我如何做到这一点?有什么帮助吗?
【问题讨论】:
-
试试
txtbox_Leave函数。 -
是的,我已经尝试了我能找到的所有可能的建议。没有任何效果。请查看我编辑的代码。
标签: c#