需求:
点击窗体上的一个按钮,在指定区域显示一个不属于窗体容器的ListBox。
即,不使用Form.Controls.Add()之类的语句,动态的生成一个ListBox并在指定的区域显示出来。
问题:
上述的需求可能实现吗?如果可以告诉我方法;不过不行,请告诉我理由。
补充:
1.单单用ListBox.Show()是不会显示出来ListBox的。
2.Form.Show()可以显示出Form。
3.ToolStripDropDown也是一个控件,ToolStripDropDown.Show()可以显示出ToolStripDropDown。
4.Form.Show(),ToolStripDropDown.Show()都重写了Control.Show(),而ListBox.Show()没有重写,他们的Show
有什么区别呢?
5.控件本身都有Graphics绘制功能,没显示的原因是不是因为没有收到系统绘制消息?
点击窗体上的一个按钮,在指定区域显示一个不属于窗体容器的ListBox。
即,不使用Form.Controls.Add()之类的语句,动态的生成一个ListBox并在指定的区域显示出来。
问题:
上述的需求可能实现吗?如果可以告诉我方法;不过不行,请告诉我理由。
补充:
1.单单用ListBox.Show()是不会显示出来ListBox的。
2.Form.Show()可以显示出Form。
3.ToolStripDropDown也是一个控件,ToolStripDropDown.Show()可以显示出ToolStripDropDown。
4.Form.Show(),ToolStripDropDown.Show()都重写了Control.Show(),而ListBox.Show()没有重写,他们的Show
有什么区别呢?
5.控件本身都有Graphics绘制功能,没显示的原因是不是因为没有收到系统绘制消息?
解决方案 »
- 求推荐一些有关c#串口方面的书?
- C#中如何添加Microsoft.DirectX.dll的引用?
- C#中利用多线程共同完成一个任务该如何操作?
- 有注册机的打包工具
- 我都换代理服务器了,怎么网站还知道是我呢?
- 关于VB.NET,C# 的定义变量或实例的问题
- 关于 图书管理系统 超时罚款
- Rational_XDE_For_VS.NET2003_License
- char[] charArray = new char[] { ',' };的含义
- 窗口最小化时,当有信息来到时,如何做到有提示信息?
- 今天学习MVC,阅读了,ASP.NET MVC 1.0高级编程有疑问啊...!!
- 关于Mono for android 现在是不是要激活了?
谢谢你的回帖。没想到会那么快。
1.有什么办法,让他绘制呢?
2.ToolStripDropDown也没有加入到Form的控件集合里,为什么能被绘制了呢?
还望你指教。
比如在新建一个Form,在Form里添加ListBox;或者用ToolStripDropDown之类的控件。
Form里添加ListBox还可以接受,ToolStripDropDown就有一点牵强了。如果用Form里添加ListBox的方法的话,焦点的问题又让人头疼。
有人说,用WindowsAPI的SHOW方法+TopMost可以实现,
我发现第一次Form.Show()的时候焦点仍然被获得了。只是在后续的Form.Show()的时候才不主动获得焦点。
dropDown.Item.Add(...);
dropDown.Show()
这三条语句就可以显示出了ToolStripDropDown了。
您说的【控件的控件集合】指的是什么?用什么语句来描述?
控件不添加到FORM控件集合就无法显示。
直接用FORM又有焦点自动转移的问题。
所以不知道怎么办了。