我是一个C#编码器,在构建新的GUI组件时有一个intresst。 已经在谷歌上获取了一些关于创建不属于任何当前标准的GUI组件的信息,并且运气不错。
简而言之,我希望能够构建我自己的组件/控制器以用于应用程序。
事情是,我有一个改变想法,创建一个替代方法来创建/绘制(不是父母,基于孩子)右键单击鼠标按钮菜单。到目前为止,它的唯一方法就是通过[DllImport(“user32.dll”)]来实现这一点,以便能够在窗体或控制器之外绘制东西。
所以我想我可能会在这里要求听听是否有人经历过像alternet鼠标点击菜单这样的handel alternet GUI组件,并且能够在控制形式och控制器之外绘制这样的组件。
问题,通过让[DllImport(“user32.dll”)]参与到屏幕上直接绘制需要的内容,这是唯一正确的方法吗?
编辑:
好的,我会尝试更精确。
我希望能够创建WinForms使用的grafical组件。在这种情况下,构建了一种构建菜单系统的替代方法,而不仅仅是构建Windows标准右键菜单的父子。
以WinForm为例,我在GUI演示时尝试使用鼠标菜单进行更改。创建一个圆形的WinForm组件,而不是WinForm的方形。
创建GUI组件,而不是使用存在的组件。在这种情况下,一种构建备用鼠标菜单的方法。
答案 0 :(得分:1)
WinForms可用的教程和其他资源没有结束。 Here是一个包含上下文菜单(右键菜单)示例的链接。
一般情况下,您不需要在代码中直接使用user32.dll
,除非您有非常具体的理由这样做。
更新:如果您不想受限于任何特定技术(如WinForms或WPF),那么您可能希望直接使用C或C ++中的user32.dll
级别。但是,您可以在C#中创建相当灵活的控件 - 有关示例,请参阅this article或this one。