MVVM:我如何在画布中添加/移动图像 [英] MVVM: How cab I add/move images in canvas

查看:166
本文介绍了MVVM:我如何在画布中添加/移动图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Hi
如何将对象添加到画布然后以MVVM样式移动对象?

我设法在一个小型WPF项目中完成它。

在MVVM中我只看到对象的类名,但没有图像。

任何一个小例子?

谢谢

Hi How can I add objects to a canvas and then move the objects around in MVVM style?
I managed to do it just in a small WPF project.
In MVVM I just see the class name of the object, but no image.
Anyone a small example?
Thanks

推荐答案

我认为通过XAML定义 Canvas 子项及其位置非常明显。如果问题是以编程方式进行,那就是这样:



添加:属性 Canvas.Children 的类型为 UIElementsCollection ;它具有所有必需的方法,例如添加(UIElement) Clear(),依此类推:

https:// msdn .microsoft.com / zh-cn / library / system.windows.controls.canvas%28v = vs.110%29.aspx [ ^ ],

< a href =https://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children%28v=vs.110%29.aspx> https://msdn.microsoft.com /en-us/library/system.windows.controls.panel.children%28v=vs.110%29.aspx [ ^ ],

< a href =https://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection%28v=vs.110%29.aspx> https://msdn.microsoft.com/en -us /库/ system.wi ndows.controls.uielementcollection%28v = vs.110%29.aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/ms603589(v=vs.110).aspx [ ^ ] 。



如果你不熟悉依赖属性,移动可能会有点混乱。这是通过使用4(或只是2) Canvas.Set *(UIElement,double)方法完成的:

https://msdn.microsoft.com/en-us/library /system.windows.controls.canvas.setright(v=vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/system。 windows.controls.canvas.settop(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/system.windows.controls .canvas.setright(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas。 setbottom(v = vs.110).aspx [ ^ ]。



通过设置依赖项属性值的无类型方法进行推广是这两个:

https:// msdn .microsoft.com / zh-CN / library / ms597473(v = vs.110).aspx [ ^ ],

https://msdn.microsoft.com/en-us/library/ms597474(v = vs.110).aspx [ ^ ]。



另请参阅: https ://msdn.microsoft.com/en-us/library/vstudio/ms752914%28v=vs.100%29.aspx [ ^ ]。



-SA
I think defining Canvas children and their location via XAML is pretty obvious. If the problem is doing it programmatically, this is what it is:

Adding: The property Canvas.Children is of the type UIElementsCollection; it has all required methods, such as Add(UIElement), Clear(), and so on:
https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas%28v=vs.110%29.aspx[^],
https://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children%28v=vs.110%29.aspx[^],
https://msdn.microsoft.com/en-us/library/system.windows.controls.uielementcollection%28v=vs.110%29.aspx[^],
https://msdn.microsoft.com/en-us/library/ms603589(v=vs.110).aspx[^].

Moving could be a bit more confusing if you are unfamiliar with dependency properties. This is done by using the 4 (or just 2) Canvas.Set*(UIElement, double) methods:
https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.setright(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.settop(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.setright(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/system.windows.controls.canvas.setbottom(v=vs.110).aspx[^].

The generalized by untyped methods of setting dependency property values are these two:
https://msdn.microsoft.com/en-us/library/ms597473(v=vs.110).aspx[^],
https://msdn.microsoft.com/en-us/library/ms597474(v=vs.110).aspx[^].

See also: https://msdn.microsoft.com/en-us/library/vstudio/ms752914%28v=vs.100%29.aspx[^].

—SA


这篇关于MVVM:我如何在画布中添加/移动图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆