什么WPF C#控件类似于C ++中的CWnd?
时间:2020-03-06 14:26:12 来源:igfitidea点击:
我们可以将C(VS 2008)中的最佳WPF控件放在可以允许我们进行类似于C ++中CWnd类的"绘制"功能的绘制的窗体上吗?同样,它可以显示位图,具有滚动条以及接受用户输入(例如,MouseMove,Button Clicks等)的能力。基本上,WPF表单中的控件中CWnd的所有功能是什么?
解决方案
UIElement是支持输入和绘图的最低级别的元素。尽管使用WPF,我们实际上必须减少很多手工绘制。确定要执行此操作吗?同样,滚动条将永远不会在元素中继承。如果需要滚动行为,只需将元素包装在ScrollViewer中即可。
UIElement是开始的地方,OnRender是要重写的方法。
请注意,WPF与Win32的WM_PAINT方法相对应,非常适合于组成UI。除非我们要创建新的低级基元,否则几乎总会有一种更有生产力的选择。