Можно ли изменить задний цвет всех форм из одной формы? Как и в моей системе, у меня есть 10 форм и от нажатия кнопки в определенной форме я могу изменить задний цвет всей другой формы и сохранить цвет?Можно ли изменить задний цвет всех форм из одной формы?
ответ
Принимая ответ Сагара, вы также можете создать статический менеджер форм.
Каждая форма будет регистра сами там и тогда менеджер может сделать всю работу ..
В конструкторах регистрируют формы:
public Form1()
{
FormManager.registerForm(this);
InitializeComponent();
}
и в Closed
событий незарегистрированного:
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
FormManager.unRegisterForm(this);
}
Теперь, когда вы хотите, чтобы вы может изменить все формы BackColors
так:
private void button1_Click(object sender, EventArgs e)
{
FormManager.setAllBackcolors(Color.Green);
}
Вот минимальный класс формы, менеджер:
public static class FormManager
{
private static List<Form> formList = new List<Form>();
public static void registerForm(Form form)
{
if (!formList.Contains(form)) formList.Add(form);
}
public static void unRegisterForm(Form form)
{
if (formList.Contains(form)) formList.Remove(form);
}
public static void setAllBackcolors(Color backColor)
{
foreach (Form f in formList) if (f != null) f.BackColor = backColor;
}
}
Если вы черпаете свои формы от общего предка регистрирующего & Дерегистрация будет закодирована только один раз в базовая форма.
Конечно менеджер может быть использован для выполнения других задач, а также, как найти или формы заказа ..
Если вы хотите, чтобы повлиять на вновь открывающиеся формы вы можете сохранить цвет в менеджере и добавить строку в зарегистрировать метод.
Для этого вы можете указать одну переменную static
в глобальном классе для заднего цвета и изменить ее при нажатии кнопки.
Например. На вашем каждый код формы будет что-то вроде этого ..
Form1.BackColor = globalClass.BackColor;
В GlobalClass.cs:
public static string BackColor="Red";
на кнопке мыши определенной формы:
globalClass.BackColor = "Black";
Это один из возможных способ сделать это.
Соответственно, вы можете применить свою логику.
- 1. Как я могу изменить цвет всех моих форм только из одной из моих форм?
- 2. Можно ли изменить цвет?
- 3. Изменить иконка всех запущенных форм
- 4. изменить цвет шрифта на задний план
- 5. Android. Установить задний цвет без изменения формы
- 6. Как изменить задний цвет kryptontabcontrol на C#?
- 7. Можно ли изменить или задать цвет заполнения формы Windows?
- 8. Публикация одной формы формы группы форм
- 9. Можно ли изменить цвет интерполированных строковых выражений?
- 10. Можно ли изменить цвет фона QLPreviewController?
- 11. Jfreechart: Можно ли изменить цвет бара?
- 12. Можно ли изменить черный цвет андроида?
- 13. Можно ли изменить цвет вкладок TTabSheet
- 14. Изменить цвет одной строки ListView
- 15. Можно ли изменить цвет ToggleSwitch в ControlsFX
- 16. Можно ли изменить цвет ActionBar в Android?
- 17. Можно ли изменить цвет индикатора выполнения? XAMARIN
- 18. Можно ли изменить цвет фона UIButtons?
- 19. System.Web.UI.WebControls.Calendar - можно ли изменить цвет отдельных элементов?
- 20. Можно ли изменить цвет FadingEdge в Listview?
- 21. Можно ли изменить цвет пикселя на экране?
- 22. Можно ли изменить цвет фона консоли Firebug?
- 23. Можно ли программно изменить цвет изображения?
- 24. Можно ли изменить цвет маршрута в MapPoint?
- 25. Можно ли изменить цвет выбранного элемента TListBox?
- 26. Можно изменить цвет ScrollBar?
- 27. Как изменить цвет одной из ячеек jqgrid?
- 28. Как обрабатывать формы (передний и задний) на одной странице?
- 29. Как сделать удаленный задний цвет?
- 30. Можно ли использовать более одной формы на странице?
Да, вы можете, как вы создаете новую форму? – Shaharyar
Да. Возможно. –
помогите мне пожалуйста :) в главном меню есть кнопка «изменить тему», и когда я нажимаю на нее, я хочу применить определенный цвет (для простоты предположим, что синий). Поэтому я хочу применить темно-синий цвет ко всем формам в моей системе. Как я могу это сделать? –