У меня проблемы с обновлением с помощью Windows.UI.Xaml.Controls.Maps.MapControl. В приведенном ниже коде Map является экземпляром Windows.UI.Xaml.Controls.Maps.MapControl. У меня есть mapPolygons, который я периодически обновляю каждые ~ 40 мс, и на карте есть много артефактов/миганий с mapPolygons. В настоящее время я просто добавляю MapPolygons в список Map.MapElements и удаляю старые. Есть ли способ включить двойную буферизацию для управления картой в универсальных приложениях Windows 10? Иначе, что я должен сделать, чтобы устранить артефакты/проблескивание?Double Buffering Win 10 Universal App Maps
В настоящее время я добавляю элементы с видимостью в ложь, затем устанавливаю их видимыми, скрывая старые элементы, а затем удаляя старые элементы.
Фрагмент текущего кода обновления:
polygon1.Visible = false;
polygon2.Visible = false;
Map.MapElements.Add(polygon1);
Map.MapElements.Add(polygon2);
polygon1.Visible = true;
polygon2.Visible = true;
for (int i = Map.MapElements.Count - 1 - 2; i >= 0; i--) // Last two elements are new, remove others
{
Map.MapElements[i].Visible = false;
}
for (int i = Map.MapElements.Count - 1 - 2; i >= 0; i--) // Last two elements are new, remove others
{
Map.MapElements.RemoveAt(i);
}
Почему вы сначала скрываете их, прежде чем удалять их? –
Это было частью моих попыток свести к минимуму артефакты, но это не сработало. Игнорируй это. Есть ли способ включить двойную буферизацию для графики, или я придерживаюсь, когда полигоны мигают, когда они обновляются. – LloydGrade