Работа над стилями для контролов DatePicker и TimePicker
Сегодня реализовал стили для пары контролов и создал один свой контрол. Сначала о своём контроле. Я сегодня между делом с оформлением стилей для новых контролов решил поправить стили и для старого под именем Expander. Ну вот, глядя всецело на этот элемент интерфейса увидел я дизайнерские изъяны в нем. Меня это дело не устраивало. Мне нужен безупречный вид. То кривое оформление, которое было до этого я поправил. Но сделать это идеально не получилось. Сегодня я решил до конца поправить дело и навести для него лоск. Долго я бился как головой об лед, но так и не смог этого сделать.
Тогда я решил, что проще будет создать свой собственный контрол вместо Expander, который будет выполнять ту же функцию: хранить скрытый контент с возможностью его сворачивания и разворачивания. Сделал, и действительно, сделать свой контрол оказалось проще, чем мучиться с недоделанной и кривой ерундой. Вот мой Expander который я назвал Spoiler (спойлер):
Оформил сегодня только два новых контрола, TimePicker - на верхнем скриншоте и DatePicker вот:
Но при работе с оформлением календаря я столкнулся снова с неприятным моментом. Как видно, календарь крупноват для этого десктопного интерфейса. Темы оформления авалонии настраивались и с учетом их использования на мобильных устройствах. Чтобы пальцами не промахнуться и попасть по кнопкам календаря. Для мобильников - нормально, но так крупновато. Я весь заколебался пытаясь придать этим кнопкам более компактный вид. Но ни в какую. Не получилось. Ширина и высота кнопок по 40 единиц (в XAML это 1/96 дюйма). Это минимальная. Задать-то для этих кнопок меньшие размеры можно, да вот беда: при этом ущерб несет дизайн самого календаря. Можно уменьшить кнопки, но при этом как уменьшить размеры контейнера календаря - хоть тресни не знаю. Всё испробовал - не вышло. Макет календаря странным образом ползёт и сворачивается при попытках манипуляций с его размерами. Осталось только смириться с тем, что я не могу этого сделать. Или не хочется неделю тратить на это.
Да, не всё всегда получается. Кк не грустно, но приходится это признавать. Ты ни в чем не всесилен. Но, зато задать Большие размеры кнопок календаря можно без ущерба для дизайна. Вот такие пироги.
Я сегодня так и не добрался до реализации своего пользовательского контрола PropertyGrid. Хотя на протяжении целого для пытался к этому прийти. Что ж, не успел. Завтра я обязательно до этого доберусь. Ну а пока всё на этом.


Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.