Рендеринг двух прямоугольников на холсте в серебряном свете - PullRequest
0 голосов
/ 14 июля 2010

Я добавил холст в файл xaml. Из кода я создаю два прямоугольника и добавляю его на холст. Здесь размеры обоих треугольников одинаковы. Когда я запускаю приложение, оба треугольника встречаются один за другим, я имею в виду, что они перекрываются. Но когда я добавляю их на панель стека, они идут один за другим? Может кто-нибудь сказать мне, как я могу сделать два прямоугольника в моем примере один за другим, не перекрывая друг друга с помощью Canvas?

Вот пример кода моего приложения;

Rectangle rect1 = новый Rectangle ();

rect1.Margin = новая толщина (1,5, 2, 1, 1);

rect1.Height = 40;

rect1.Width = 60;

rect1.Stroke = new SolidColorBrush (Colors.Black);

myCanvas1.Children.Add (rect1);

Rectangle rect2 = новый Rectangle ();

rect2.Height = 40;

rect2.Width = 60;

rect2.Stroke = new SolidColorBrush (Colors.Black);

myCanvas1.Children.Add (rect2);

Заранее спасибо

Падма

1 Ответ

1 голос
/ 14 июля 2010

StackPanel автоматически размещает свои дочерние элементы так, чтобы они не перекрывались.Canvas этого не делает, так как он упорядочивает свои дочерние элементы в соответствии со своими присоединенными свойствами Canvas.Left и Canvas.Top.

Назначьте прямоугольникам эти свойства, чтобы расположить их вручную, как вам нравится.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...