Подпишись на наш Twitter

Быть в курсе появления новых статей!

Потому что WPF позиционирует GUI элементы используя машинно независимые единицы, маленькие GUI элементы могут выглядеть нечеткими при отображении за счет сглаживания (антиалиасинга).

Обратите внимание что края элементов Border немного размыты в примере ниже. Каждый элемент должен быть шириной в 2 на этом устройстве, но сглаживание приводит к нечеткости краев.

Нечеткие края еще более видны, если увеличить масштаб.

Вы можете предотвратить нечеткость, при сглаживании установив свойство UseLayoutRounding у FrameworkElement в true. Установка этого свойства в true указывает системе разметки выравнивать элементы линий по пиксельной границе, что предотвращает сглаживание. Это известно как пиксельная привязка.

Уставновка UseLayoutRounding в true на родительском Grid из предыдущего примера приводит к стабильному размеру элементов Border (2 пикселя шириной на 96 dpi экране).

Оригинал: #453 – The UseLayoutRounding Property Aligns Things to Pixel Boundaries




Дата публикации: 20.12.2011 00:20

Ярлыки: Layout, WPF