В DeepEarth функция перетаскивания карты используется для стандартизации модели операций пользователя, такой как выбор, перемещение и рисование при работе с картой. DeepEarth инкапсулирует его внутри элемента управления картой (Map) с помощью структуры перечисления. Исходный код выглядит следующим образом:
код
/// <сводка>
/// Карта поведения при перетаскивании
/// </сводка>
публичное перечисление DragBehavior
{
/// <сводка>
/// Перетащите мышь к точке значка в форме руки на карте. Карта будет отображаться при перетаскивании мыши и позиционировании в том месте, где мышь отпущена.
/// </сводка>
Кастрюля,
/// <сводка>
///Нарисуйте рамку на карте, выделив ее, и когда мышь отпустит выделение, карта отобразится в увеличенном виде.
/// </сводка>
Выбирать,
/// <сводка>
/// Рисуем графику на карте.
/// </сводка>
Рисовать
}
Поведение перетаскивания в DeepEarth по умолчанию определяется как перетаскивание мышью. Когда пользователь управляет картой на представленной карте, мышь превращается в точку значка в форме руки и перетаскивает карту на карте. . Когда мышь отпустит перетаскивание, карта расположится в том месте на карте, в котором мышь отпущена для перетаскивания. Поведение перетаскивания по умолчанию определено в исходном коде следующим образом:
//Карта поведения перетаскивания
частный DragBehavior _DragMode = DragBehavior.Pan;
Поведение карты при перетаскивании кратко описано выше. Давайте посмотрим, как использовать функцию перетаскивания карты в процессе разработки. В качестве эксперимента мы можем разместить кнопку на интерфейсе и переключиться. поведение перетаскивания карты, нажав кнопку Отпустить функцию поведения:
код
/// <сводка>
/// Изменяем поведение перетаскивания карты
/// </сводка>
/// <param name="sender"></param>
/// <param name="e"></param>
Private void btnDragBehavior_Click (отправитель объекта, RoutedEventArgs e)
{
//Определяем режим перетаскивания текущей карты — для переключения между двумя режимами
переключатель (mapInstance.DragMode)
{
случай Map.DragBehavior.Pan:
MapInstance.DragMode = Map.DragBehavior.Select;
ToolTipService.SetToolTip(btnDragBehavior, "Переключиться в режим масштабирования выделения");
btnDragBehavior.Content = "Выбрать";
перерыв;
случай Map.DragBehavior.Select:
MapInstance.DragMode = Map.DragBehavior.Pan;
ToolTipService.SetToolTip(btnDragBehavior, "Переключиться в режим панорамирования с помощью перетаскивания");
btnDragBehavior.Content = "Перетащите";
перерыв;
}
}