首页 新闻 会员 周边

WPF中Grid能用作图形容器么?

0
悬赏园豆:20 [已解决问题] 解决于 2013-02-01 23:54

Point p = e.GetPosition(canvas);
double x = p.X;
double y = p.Y;
Ellipse ellipes = new Ellipse();
ellipes.Height = 50;
ellipes.Width = 50;
ellipes.Fill = Brushes.LightBlue;
ellipes.Margin = new Thickness(x - 25, y - 25, 0, 0);
canvas.Children.Add(ellipes);

目的是点击鼠标时以点击位置为圆心画圆,当canvas为容器时能达到目标

用Grid不行 为什么?

WPF
涵天11的主页 涵天11 | 初学一级 | 园豆:186
提问于:2013-02-01 17:48
< >
分享
最佳答案
0

Grid当然能做图形容器了,只不过对子控件布局的方式和canvas不大一样罢了。就你当前的这个需求的话,把

  Ellipse ellipes = new Ellipse();

改成

  Ellipse ellipes = new Ellipse() { HorizontalAlignment = HorizontalAlignment.Left, VerticalAlignment = VerticalAlignment.Top };

就可以实现以鼠标点击位置为圆心画图了。

不过,就算不改,应该也不是画不出来,而是圆心位置和canvas的不大一样罢了,不知道你的问题是啥现象。

收获园豆:20
天方 | 大侠五级 |园豆:5407 | 2013-02-01 20:51

圆心位置在鼠标的右下方,离得很远

涵天11 | 园豆:186 (初学一级) | 2013-02-01 23:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册