Обичайно е съвременните приложения да имат опция за превключване между различни теми. Например, някои приложения ви позволяват да сменяте между светла тема или тъмна тема, докато други може да имат повече възможности за избор на тема.
Windows Forms е UI рамка, която ви позволява да създавате настолни приложения. Можете да внедрите теми в приложение за формуляр на Windows, като създадете избираеми бутони за всяка тема.
MAKEUSEOF ВИДЕО НА ДЕНЯ
Когато потребителят избере тема, можете да промените свойствата на цвета на фона или цвета на текста на всеки елемент, за да съответства на избраната тема.
инсталирайте windows media player windows 10
Как да настроите проекта Windows Form
Първо създайте ново приложение за формуляр на Windows. Попълнете новия проект с някои основни контроли, като бутони и етикети.
- Създавам ново приложение Windows Forms във Visual Studio.
- В новия проект използвайте кутията с инструменти, за да търсите контрола с бутон.
- Изберете бутон за управление и го плъзнете върху платното. Добавете общо три бутона за управление.
- С помощта на кутията с инструменти щракнете и плъзнете a контрол на етикета върху платното. Поставете етикета под бутоните.
- Стилизирайте бутоните и етикетите с помощта на прозореца със свойства. Променете свойствата на следното:
бутон1 Размер 580, 200 FlatStyle Апартамент Текст Потребители бутон2 Размер 580, 100 FlatStyle Апартамент Текст Сметки бутон3 Размер 580, 100 FlatStyle Апартамент Текст Разрешения етикет1 Текст Авторско право 2022 г
Как да създадете бутона за настройки и списъка с теми
За да работи едно просто меню с теми, създайте множество бутони, които да представят всяка тема. Приложението ще включва три теми, 'Светла' тема, 'Природа' тема и 'Тъмна' тема.
- Добавете друг контролен бутон към платното, за да представите бутона за настройки (или „Теми“).
- Променете свойствата на този бутон на следните:
Име btnThemeSettings FlatStyle Апартамент Размер 200, 120 Текст Теми - Плъзнете още три бутона върху платното. Тези бутони ще представляват трите различни теми. Променете свойствата за всеки от бутоните на следното:
1-ви бутон Име btnLightTheme BackColor WhiteSmoke Размер 200, 80 FlatStyle Апартамент Текст Светлина Видими Невярно 2-ри бутон Име btnNatureTheme BackColor DarkSeaGreen Размер 200, 80 FlatStyle Апартамент Текст Природата Видими Невярно 3-ти бутон Име btnDarkTheme BackColor DimGray ForeColor Бяло Размер 200, 80 FlatStyle Апартамент Текст Тъмно Видими Невярно - Щракнете двукратно върху Теми бутон. Това ще създаде метод за обработка на събитието „on click“. Методът ще се стартира, когато потребителят щракне върху този бутон.
- По подразбиране темите „Светли“, „Природа“ и „Тъмни“ няма да се виждат. Във функцията добавете функционалността за превключване на видимостта на бутоните за показване или скриване.
private void btnThemeSettings_Click(object sender, EventArgs e)
{
btnNatureTheme.Visible = !btnNatureTheme.Visible;
btnLightTheme.Visible = !btnLightTheme.Visible;
btnDarkTheme.Visible = !btnDarkTheme.Visible;
} - Стартирайте приложението, като щракнете върху зеления бутон за възпроизвеждане в горната част на прозореца на Visual Studio.
- По време на изпълнение приложението ще скрие бутоните за всяка от трите теми по подразбиране.
- Кликнете върху Теми бутон за превключване на темите за показване. Можете да продължите да натискате Теми бутон за превключване на тяхната видимост.
Как да управлявате своите теми
Създайте речници за всяка тема, за да съхранявате различните цветове, които ще използва. Това е така, че да съхранявате всичките си цветове на темата на едно място, в случай че трябва да ги използвате няколко пъти. Освен това улеснява, ако искате да актуализирате тема с нови цветове в бъдеще.
- В горната част на по подразбиране Form1.cs C# файл и вътре в форма клас, създайте глобално enum. Това преброяване ще съхранява различните типове цветове, които ще използвате в тема.
enum ThemeColor
{
Primary,
Secondary,
Tertiary,
Text
} - Отдолу декларирайте три глобални речника, по един за всяка от трите теми. Можете да прочетете повече за речниците, ако не сте запознати с това как да използвате a речник в C# .
Dictionary<ThemeColor, Color> Light = new Dictionary<ThemeColor, Color>();
Dictionary<ThemeColor, Color> Nature = new Dictionary<ThemeColor, Color>();
Dictionary<ThemeColor, Color> Dark = new Dictionary<ThemeColor, Color>(); - Вътре в конструктора инициализирайте речниците. Добавете стойности за различните цветове, които всяка тема ще използва.
public Form1()
{
InitializeComponent();
// Add dictionaries here
Light = new Dictionary<ThemeColor, Color>() {
{ ThemeColor.Primary, Color.WhiteSmoke },
{ ThemeColor.Secondary, Color.Silver },
{ ThemeColor.Tertiary, Color.White },
{ ThemeColor.Text, Color.Black }
};
Nature = new Dictionary<ThemeColor, Color>() {
{ ThemeColor.Primary, Color.DarkSeaGreen },
{ ThemeColor.Secondary, Color.AliceBlue },
{ ThemeColor.Tertiary, Color.Honeydew },
{ ThemeColor.Text, Color.Black }
};
Dark = new Dictionary<ThemeColor, Color>() {
{ ThemeColor.Primary, Color.DimGray },
{ ThemeColor.Secondary, Color.DimGray },
{ ThemeColor.Tertiary, Color.Black },
{ ThemeColor.Text, Color.White }
};
}
Как да промените темата
Създайте функции за управление на темата на приложението. Тези функции ще променят цвета на фона или цвета на текста на елементите на потребителския интерфейс върху платното.
какво да правите, когато iphone е заседнал върху логото на apple
- Създайте нова функция, наречена Промяна на темата() . Функцията ще приеме цветовете за дадена тема като аргументи.
- Вътре във функцията променете свойствата на цвета на фона на елементите на потребителския интерфейс. Новите цветове на фона ще използват цветове за избраната тема.
private void ChangeTheme(Color primaryColor, Color secondaryColor, Color tertiaryColor)
{
// Change background color of buttons
btnThemeSettings.BackColor = primaryColor;
button1.BackColor = primaryColor;
button2.BackColor = secondaryColor;
button3.BackColor = secondaryColor;
this.BackColor = tertiaryColor;
} - Създайте нова функция, наречена ChangeTextColor() . Можете да използвате това, за да промените цвета на текста между тъмен и светъл. Това е, за да се гарантира, че текстът на тъмен фон ще бъде четим.
private void ChangeTextColor(Color textColor)
{
// Change color of text
button1.ForeColor = textColor;
button2.ForeColor = textColor;
button3.ForeColor = textColor;
label1.ForeColor = textColor;
btnThemeSettings.ForeColor = textColor;
} - От дизайнера щракнете двукратно върху контролата на бутона 'Светлина'. Това ще отвори файла със задния код и ще генерира манипулатор на събития, когато потребителят щракне върху бутона.
- Вътре в манипулатора на събития използвайте Промяна на темата() и ChangeTextColor() функции. Въведете цветовете, които използва темата. Можете да извлечете тези цветове от речника на темата 'Light'.
private void btnLightTheme_Click(object sender, EventArgs e)
{
ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]);
ChangeTextColor(Light[ThemeColor.Text]);
} - Върнете се в дизайнера и кликнете върху бутоните 'Nature' и 'Dark'. Използвай Промяна на темата() и ChangeTextColor() функции и в техните манипулатори на събития.
private void btnNatureTheme_Click(object sender, EventArgs e)
{
ChangeTheme(Nature[ThemeColor.Primary], Nature[ThemeColor.Secondary], Nature[ThemeColor.Tertiary]);
ChangeTextColor(Nature[ThemeColor.Text]);
}
private void btnDarkTheme_Click(object sender, EventArgs e)
{
ChangeTheme(Dark[ThemeColor.Primary], Dark[ThemeColor.Secondary], Dark[ThemeColor.Tertiary]);
ChangeTextColor(Dark[ThemeColor.Text]);
} - По подразбиране темата трябва да бъде зададена на „Светла“, когато потребителят отвори приложението за първи път. В конструктора, под речниците, използвайте Промяна на темата() и ChangeTextColor() функции.
ChangeTheme(Light[ThemeColor.Primary], Light[ThemeColor.Secondary], Light[ThemeColor.Tertiary]);
ChangeTextColor(Light[ThemeColor.Text]); - Стартирайте приложението, като щракнете върху зеления бутон за възпроизвеждане в горната част на прозореца на Visual Studio.
- По подразбиране приложението използва темата „Light“ и прилага сивата цветова схема към контролите на потребителския интерфейс. Превключете бутона за теми, за да видите списъка с теми.
- Кликнете върху темата Природа.
- Кликнете върху тъмната тема.
Създаване на приложения чрез Windows Forms
Много приложения позволяват на потребителя да превключва между множество теми. Можете да добавите теми към приложение на Windows Forms, като създадете опции, които потребителят да избира.
Когато потребителят щракне върху тема, можете да промените цвета на фона, текста или други свойства, за да съответстват на цветовете, използвани в избраната тема.
Цветовете за всяка от темите използват вградените цветове на Visual Studio. Ще трябва да използвате подходяща цветова схема, за да предоставите на потребителите по-добро изживяване. Можете да научите повече за различните начини, по които можете да изберете цветова схема за вашето приложение.