Как добавить TextBlock в путь? - PullRequest
9 голосов
/ 12 января 2010

У меня есть приложение Silverlight, которое добавляет путь к сетке LayoutRoot пользовательского элемента управления. Геометрия пути представляет собой простой прямоугольник.

Я хотел бы иметь возможность добавить TextBlock, содержащийся в Path, который был добавлен в сетку LayoutRoot.

Я также использую собственный Adorner, чтобы позволить мне изменить размер Пути на экране и перемещать его.

По сути, я хочу, чтобы родительский объект TextBlock был путем, чтобы всякий раз, когда я перемещал Path, TextBlock перемещался вместе с ним, и, кроме того, текст внутри TextBlock никогда не выходил за границы Path.

Вот пример того, что у меня сейчас есть:

var shape = new ShapeClass((o, u) => { LayoutRoot.Children.Add(o); LayoutRoot.Children.Add(u); }); 

Вот конструктор для класса Shape:

public ShapeClass(Action<Path, TextBlock> insert){}

Где 'o' - объект Path, а 'u' - текстовый блок ...

У кого-нибудь есть идеи относительно того, как этого можно достичь?

Спасибо.

Ответы [ 2 ]

5 голосов
/ 12 января 2010

Поместите путь и текстовое поле в сетку или холст и переместите его вместо этого. Таким образом, два элемента управления останутся в одном положении относительно друг друга.

3 голосов
/ 12 января 2010

Путь не является элементом управления содержимым, поэтому вы не можете поместить в него TextBox.

Если вы используете простой Rectangle, то почему бы вместо этого не использовать Border?

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