Событие на отслеживание изменения переменной выглядит так:
public bool Flag
{
get { return _flag; }
set
{
_flag = value;
if (Flag == true)
{
// Собственно событие
}
}
}
bool _flag;
Но как сделать так, чтобы событие выполнялось при изменении члена класса, который прописан в Program.cs?
class WarningFlag
{
public static bool Alarm = false;
}
Иными словами, есть класс WarningFlag, есть член класса Alarm. Как будет выглядеть событие, которое будет отслеживать изменение WarningFlag.Alarm?
Создайте в вашем классе событие и вызывайте его при изменении свойства Flag. Примерно так:
public delegate void MyDelegate();
public event MyDelegate OnFlagChanged;
public bool Flag
{
get { return _flag; }
set
{
_flag = value;
if (_flag)
{
OnFlagChanged?.Invoke();
}
}
}
private bool _flag;
Затем в нужных местах (ult-то в тех формах, о которых dds пишете в комментарии) навешайте на него обработчики:
_instance.OnFlagChanged += EventHandler;
где _instance
- экземпляр вашего класса, содержащего свойство Flag
, а EventHandler
- некий метод, обрабатывающий само событие
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Текстовое поле с шириной Auto не имеет отступов внутри себя, границы текстового поля подпирают текст, выделить его с правого края крайне неудобноЕсли...
Хочу реализовать возможность движения объекта при зажатии клавишиРанее использовал form keydown, но получается не очень плавно:
При добавлении UserControl-ов в FlowLayoutPanel, они прижимаются к левому краю
создал приложение WindowsForms, подключил базу данных, перетащил таблицы на форму, добавил и привязал BindingNavigatorтак как таблиц много, и все они связаны,...