Добавление анкерной линии к пользовательской кнопочной панели Bing Maps и предоставление пользователю возможности перетаскивать - PullRequest
2 голосов
/ 08 марта 2011

В настоящее время я работаю над приложением Silverlight, использующим элемент управления Bing Map, я использую настраиваемую метку, состоящую из изображения и текстового блока в элементе сетки, что прекрасно работает, это также позволяет мне иметь указатель мыши и правособытия щелчка для каждой канцелярской кнопки, так что пока все хорошо, однако мне необходимо дать пользователю возможность перетащить канцелярскую кнопку в любом направлении и иметь линию, соединяющую ее с ее фактическим положением, что-то вроде точки привязки.

Я изо всех сил пытаюсь понять, как это сделать, я видел много информации о том, как кнопки могут перемещаться мышью, но линия и якорная часть вызывают у меня небольшую проблему.В настоящее время я держу свои кнопки в различных наблюдаемых коллекциях, чтобы при их обновлении пользовательский интерфейс обновлялся.Если у кого-то есть идея относительно чистого способа добавления этой функции, пожалуйста, дайте мне знать, что она будет высоко оценена.

Большое спасибо

Ответы [ 2 ]

0 голосов
/ 09 марта 2011

Меня все еще интересуют другие подходы, но я нашел решение связать элемент pushpin с MapPolyline, это в сочетании с обработкой мыши, чтобы позволить пользователю перетаскивать обновления кнопки, оба, это довольно эффективно исделаю пока.Я все еще хотел бы услышать от кого-то еще с лучшими предложениями все же.

0 голосов
/ 09 марта 2011

У меня нет времени, чтобы разбить полный пример. Однако я отдам основу решения. Замените шаблон на основе Canvas. Например, у вас может быть эллипс, который будет реальной точкой на карте, перетаскиваемая граница с ContentPresenter и линия, действующая как привязь.

Требуемый код: а) позволяет перемещать границу и б) перемещать один конец линии так, чтобы она лежала под границей.

...