系统相关
首页 > 系统相关> > c#-Windows Mobile 6.1-.NET CF StatusBar控件-嵌入图标

c#-Windows Mobile 6.1-.NET CF StatusBar控件-嵌入图标

作者:互联网

是否可以在.NET CF 3.5的StatusBar控件上嵌入图标?

解决方法:

Compact Framework StatusBar控件非常非常基础,并且功能有限.它不支持添加图像,甚至不支持多个面板.这部分是由于CF团队(IMO)的懒惰,另一部分是由于OS限制.

操作系统状态栏通用控件最多支持255个面板. CF团队不允许超过一个.这纯粹是惰性,但是至少您可以通过将其子类化并发送SB_SETPARTS消息来解决它.要使其全部正常工作,将需要大量的P / Invoking,因此除非您确实需要,否则我将避免使用它.

但是,本机控件甚至不支持图像.可以将其子类化,然后自己处理WM_PAINT并绘制图标.我没有尝试过,但这似乎是一种合理的方法.这也将需要对所有GDI东西进行一些丑陋的本地调用.这可能会导致内存泄漏或访问冲突,因此,除非您真正需要它并且对旧的Win32绘画感到满意,否则在决定采用此方法之前,您可能会尝试提出其他解决方案.

标签:mobile,windows-mobile,compact-framework,c,net
来源: https://codeday.me/bug/20191209/2096322.html