Имеется канва на которой я могу рисовать квадраты, а их соединять линиями. Также я могу выделять эти квадраты и перетаскивать как захочу, и соответственно линии также перетягиваются за квадратами. Всё было хорошо, пока я использовал класс Line
.
Как можно связать через Binding
один из концов Polyline
и центр квадрата? У квадрата есть свойства зависимости X и Y и просто свойство CenterPoint.
До этого были связаны квадрат и просто линия - Line
. Код был таким:
public void BindingLineXY2(ref MyLine line)
{
Binding bindLX2 = new Binding();
bindLX2.Source = this;
bindLX2.Path = new PropertyPath("X");
bindLX2.Mode = BindingMode.TwoWay;
line.MakedLine.SetBinding(Line.X2Property, bindLX2);
Binding bindLY2 = new Binding();
bindLY2.Source = this;
bindLY2.Path = new PropertyPath("Y");
bindLY2.Mode = BindingMode.TwoWay;
line.MakedLine.SetBinding(Line.Y2Property, bindLY2);
}
Таким же образом X1 и Y1 биндились.
Решил модернизировать до Polyline
и столкнулся с трудностями.
У класса Polyline
есть свойство зависимости PointsProperty
.
Это коллекция точек, к которой ты и можешь привязаться. Положи в неё с нужного тебе края центральную точку квадрата и наслаждайся. Квадрат, соответственно, тоже может быть привязан к точке из этой коллекции. Напрямую, думаю, будет не очень красиво и довольно грязно. Так что лучше через ViewModel с INotifyPropertyChanged
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый деньРеализовал вероятностный алгоритм определение простоты числа на основе малой теоремы Ферма
Хочу сохранять при закрытии формы данные в файл и потом загружатьПри сохранении все сохраняется, а при открытии не загружается
Используется Visual Studio 2015; Devexpress 171