Canvas和Grid的区别在于移动、调整和旋转UIElements我想开发一个可以动态添加控件的编辑器,然后移动、调整大小或旋转以使用此UIElement构建窗口。我的问题是谁更适合UIElements这个容器,Grid还是Canvas?画布在绝对位置上工作,可能具有更好的转换精度。但是当我以不同的屏幕分辨率显示应用程序时,响应速度会变差吗?我不太了解Grid或Canvas的优点/缺点。我用Canvas和Grid做了一个例子,用这段代码移动了一个UIElement:TranslateTransformtransform=newTranslateTransform();变换.X=Mouse.GetPosition(MyGridOrCanvas).X;transform.Y=Mouse.GetPosition(MyGridOrCanvas).Y;ui.RenderTransform=变换;但是对于Canvas或Grid,当我点击UIElement并且它没有移动时,UIElement总是从我的光标移动x,y。也许这不是最好的方法。如果您还有关于如何构建的教程,这对我也有帮助。我对这些东西很陌生。非常感谢和问候!我只是为这个问题提供一个简短的答案,因为这里的社区可能会因为过于主观而被关闭。我已经可以看到势均力敌的投票。因此,在我看来,Canvas是用于此目的的更好控件。出于一个原因,它没有Grid的大量布局要求,因此效率更高。另一个主要原因是使用Canvas.Top和Canvas.Left属性移动项目是完美的......在其他Panels中移动项目,您经常需要设置Margin属性,这远非理想。至于你的项目在点击时移动......那只是你代码中的一个错误,这不是正常行为-除非我们告诉它,否则控件不会自行移动。以上是C#学习教程:Canvas和Grid的区别在于移动、调整大小、旋转所有UIElements共享的内容。如果对大家有用,需要进一步了解C#学习教程,希望大家多加关注——本文来自网络合集,不代表立场,如涉及侵权,请点击有权联系管理员删除。如需转载请注明出处:
