/
denispirit
/
informationSystem
Обзор
Документация
Войти
/
denispirit
/
informationSystem
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
InformationSystem/StyleHelper.cs
140 строк
6 KB
denispirit
Первый коммит. Отправка в репозиторий
29 сен 2025, 10:39
29 сен 2025, 10:39
24ca85c
Код
Авторство
О чём код?
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Drawing; using System.Windows.Forms; namespace InformationSystem { internal class StyleHelper { // Цветовая схема приложения public static Color PrimaryColor { get; } = Color.FromArgb(0, 122, 204); // Синий основной public static Color SecondaryColor { get; } = Color.FromArgb(240, 240, 240); // Светло-серый public static Color AccentColor { get; } = Color.FromArgb(0, 150, 136); // Бирюзовый акцентный public static Color SuccessColor { get; } = Color.FromArgb(76, 175, 80); // Зеленый успех public static Color WarningColor { get; } = Color.FromArgb(255, 152, 0); // Оранжевый предупреждение public static Color ErrorColor { get; } = Color.FromArgb(244, 67, 54); // Красный ошибка // Шрифты public static Font TitleFont { get; } = new Font("Segoe UI", 14, FontStyle.Bold); public static Font HeaderFont { get; } = new Font("Segoe UI", 11, FontStyle.Bold); public static Font NormalFont { get; } = new Font("Segoe UI", 9); public static Font SmallFont { get; } = new Font("Segoe UI", 8); // Применение стиля к форме public static void ApplyStyle(Form form) { form.BackColor = SecondaryColor; form.Font = NormalFont; form.StartPosition = FormStartPosition.CenterScreen; form.FormBorderStyle = FormBorderStyle.FixedSingle; form.MaximizeBox = false; form.MinimizeBox = true; form.Icon = SystemIcons.Application; // Можно заменить на свою иконку } // Стиль для кнопок public static void StyleButton(Button button, bool isPrimary = false) { button.FlatStyle = FlatStyle.Flat; button.FlatAppearance.BorderSize = 0; button.BackColor = isPrimary ? PrimaryColor : Color.White; button.ForeColor = isPrimary ? Color.White : Color.Black; button.Font = HeaderFont; button.Size = new Size(120, 35); button.Cursor = Cursors.Hand; button.Padding = new Padding(10, 5, 10, 5); // Эффекты при наведении button.FlatAppearance.MouseOverBackColor = isPrimary ? ControlPaint.Dark(PrimaryColor, 0.1f) : ControlPaint.Light(SecondaryColor, 0.1f); button.FlatAppearance.MouseDownBackColor = isPrimary ? ControlPaint.Dark(PrimaryColor, 0.2f) : ControlPaint.Dark(SecondaryColor, 0.1f); } // Стиль для текстовых полей public static void StyleTextBox(TextBox textBox) { textBox.BorderStyle = BorderStyle.FixedSingle; textBox.BackColor = Color.White; textBox.ForeColor = Color.Black; textBox.Font = NormalFont; textBox.Size = new Size(250, 25); } // Стиль для меток public static void StyleLabel(Label label, bool isHeader = false) { label.Font = isHeader ? HeaderFont : NormalFont; label.ForeColor = isHeader ? PrimaryColor : Color.Black; label.AutoSize = true; } // Стиль для DataGridView public static void StyleDataGridView(DataGridView grid) { grid.BackgroundColor = SecondaryColor; grid.BorderStyle = BorderStyle.None; grid.EnableHeadersVisualStyles = false; // Стиль заголовков столбцов grid.ColumnHeadersDefaultCellStyle.BackColor = PrimaryColor; grid.ColumnHeadersDefaultCellStyle.ForeColor = Color.White; grid.ColumnHeadersDefaultCellStyle.Font = HeaderFont; grid.ColumnHeadersHeight = 35; grid.ColumnHeadersBorderStyle = DataGridViewHeaderBorderStyle.None; // Стиль строк grid.DefaultCellStyle.BackColor = Color.White; grid.DefaultCellStyle.ForeColor = Color.Black; grid.DefaultCellStyle.Font = NormalFont; grid.DefaultCellStyle.SelectionBackColor = AccentColor; grid.DefaultCellStyle.SelectionForeColor = Color.White; // Чередование цветов строк grid.AlternatingRowsDefaultCellStyle.BackColor = Color.FromArgb(245, 245, 245); // Настройка внешнего вида grid.RowHeadersVisible = false; grid.AllowUserToAddRows = false; grid.AllowUserToDeleteRows = false; grid.ReadOnly = true; grid.SelectionMode = DataGridViewSelectionMode.FullRowSelect; grid.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; grid.RowTemplate.Height = 30; } // Стиль для ComboBox public static void StyleComboBox(ComboBox comboBox) { comboBox.FlatStyle = FlatStyle.Flat; comboBox.BackColor = Color.White; comboBox.ForeColor = Color.Black; comboBox.Font = NormalFont; comboBox.DropDownStyle = ComboBoxStyle.DropDownList; comboBox.Size = new Size(250, 25); } // Стиль для CheckBox public static void StyleCheckBox(CheckBox checkBox) { checkBox.FlatStyle = FlatStyle.Flat; checkBox.ForeColor = Color.Black; checkBox.Font = NormalFont; } // Стиль для GroupBox public static void StyleGroupBox(GroupBox groupBox) { groupBox.ForeColor = PrimaryColor; groupBox.Font = HeaderFont; groupBox.FlatStyle = FlatStyle.Flat; } } }