首页 新闻 会员 周边

关于propertygrid 自定义编辑器,需要自动弹出编辑框

0
悬赏园豆:50 [已解决问题] 解决于 2013-01-15 09:10

propertygrid中对某个属性的编辑可以弹出列表,以 FlatStyle属性为例          

 

点击右边的 向下箭头 即可弹出

             

现在需要用程序弹出那个列表而不是用鼠标,该如何实现?

xiaoyaozhe的主页 xiaoyaozhe | 初学一级 | 园豆:123
提问于:2012-11-13 08:45
< >
分享
最佳答案
0

对于你的举例,其实很简单就能实现,因为那个属性的类型是enum类型,所有enum类型的编辑,都是以这种下拉框的形式给出所有的枚举值供用户选择,除非是普通的string类型才需要特殊处理。

收获园豆:30
秦楼东 | 小虾三级 |园豆:913 | 2012-11-13 10:04

我只是用这个enum类型举例,希望知道怎么能模拟点击属性右边的 编辑 按钮,也可以是这样的路径选择按钮。项目中用的是自定义编辑器,但性质一样,都有编辑按钮的

我想知道 编辑按钮只能用户通过UI用鼠标点击么?

xiaoyaozhe | 园豆:123 (初学一级) | 2012-11-13 10:21

@xiaoyaozhe: 

你要的功能对于现有的propertygrid来说是不行的,但是如果你自己制作一个功能一样的propertygrid界面,则可以通过快捷键的形式实现,为那些编辑按钮添加快捷键,这样就可以发送键盘消息来弹出编辑界面了。

另外如果通过WIN32的API直接查找界面的元素估计可以,但那个就不是C#做的事了,如果你学C++,对WIN32的API函数知道些的话,可以尝试,记得上次看到过一个人用“易语言”做过类似的事。

秦楼东 | 园豆:913 (小虾三级) | 2012-11-14 10:53
其他回答(1)
0

程序弹出属性窗口里的选项?可能么

如果不可视化设置此属性 想在代码里控制 可以在load事件里:

this.flatstyle=flatstyle.standard;

收获园豆:20
oppoic | 园豆:770 (小虾三级) | 2012-11-13 08:53

谢谢你的回答,不过我的问题是需要在弹出列表里面选择要设置的值,就是模拟鼠标点击那个 向下箭头,项目需要的

支持(0) 反对(0) xiaoyaozhe | 园豆:123 (初学一级) | 2012-11-13 10:02

我现在已经实现根据 griditem.label属性让 FlatSty 行被选高亮,但是不知道怎么模拟那个箭头的点击操作

支持(0) 反对(0) xiaoyaozhe | 园豆:123 (初学一级) | 2012-11-13 10:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册