Обновить
4K+
10

Пользователь

1
Рейтинг
1
Подписчики
Отправить сообщение

Кастомные WPF-контролы, часть 3: ListBox с поддержкой drag’n’drop, масштабирования и различной сортировкой содержимого

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели4.8K

часть 1: стили, кнопки и переключатели

часть 2: ComboBox с фильтрацией содержимого, TimePicker, DateTimePicker

В этой статье я расскажу про разработку панели с поддержкой анимированного переноса элементов и какстомной сортировкой содержимого. Это, пожалуй, была одна из самых сложных задач, связанных с WPF контролами. Достаточно долго я не знал, с какой стороны к ней подступиться, пока не нашел несколько примеров: один на github, другой на  codeproject (оставлю ссылку, хотя сейчас сайт недоступен). В них было реализовано примерно то, что мне было нужно. Так же я нашел неплохую  статью на professorweb. Этой информации хватило, чтобы написать свой контрол с функционалом, который меня устроил.

Для реализации необходимой функциональности потребуется не один, а два контрола:

1.     ExtendedListBox - наследник от ListBox с поддержкой масштабирования

2.     DragAnimatedPanel - панель с поддержкой различных типов сортировки и drag’n’drop 

Читать далее

Кастомные WPF-контролы, часть 2: ComboBox с фильтрацией содержимого, TimePicker, DateTimePicker

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели7.2K

В этой статье я продолжу разбирать нюансы разработки WPF-контролов. В прошлой части мы рассмотрели, как сделать свой стиль для кнопки и переключателя. Сейчас разберем ComboBox и DateTimePicker.

Читать далее

Кастомные WPF-контролы, часть 1: стили, кнопки и переключатели

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели9.1K

Относительно недавно мне поставили задачу разработать достаточно простое Windows приложение. При выборе технологии я решил использовать проверенный временем WPF, с которым я работал раньше. Как правило, при разработке WPF‑приложения, я использовал контролы от Telerik или DevExpress и разработкой своих контролов не занимался. Но в текущей ситуации приобрести их проблематично и не факт, что не будет проблем с лицензией в будущем. Проект, над которым я работал, небольшой, навороченных гридов в нем не было, поэтому я решил использовать то, что есть в WPF «из коробки». При этом потребуется написать DateTimePicker и доработать Button, ToggleButton, ComboBox и ListBox. Задача казалась не особо сложной. В результате все оказалось не все так просто и очевидно, как я думал. Это навело меня на мысль написать серию статей с описанием проблем, с которыми я столкнулся. Может быть это поможет другим разработчикам на наступать на те же грабли, что и я. В планах 3 статьи. В первой расскажу про подключение стилей и изменение дизайна у стандартных кнопки и переключателя. Во второй — про расширение функционала стандартного ComboBox и разработку DateTimePicker. В третьей про добавление в ListBox анимированного drag«n«drop, масштабирования и сортировки содержимого.

Читать далее

Добавление файлов контента в nuget-пакетах

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели4.5K

Привет! Меня зовут Александр, я старший разработчик в команде, которая занимается оцифровкой документов. Когда мы разрабатываем пакеты библиотек компонентов, иногда возникает необходимость дополнить исполняемый код определенным контентом. Нередко этот контент нужен именно в виде отдельных файлов, а не встроенных ресурсов. Примерами таких задач могут быть различные пакеты .NET-оболочек, которым обычно необходимы исходные библиотеки. Нам же понадобились специальные шрифты во внутрикорпоративной библиотеке конвертации документов.

Мы видели два варианта решения проблемы:

Читать далее

Информация

В рейтинге
2 043-й
Зарегистрирован
Активность

Специализация

Десктоп разработчик, Фулстек разработчик
Старший
C#
SQL