У меня есть класс (приложение Winforms), который отслеживает состояние группы реальных коммутаторов и сохраняет их состояние открытия / закрытия в двух массивах.Один массив представляет собой статус в двоичном (0,1) формате, а другой - в строковом («открытый», «закрытый») формат.Пользовательский интерфейс использует строковый формат, а внутренние вызовы используют оба формата, поэтому мне нужны оба массива.
Я продолжаю стучать головой, пытаясь придумать лучший способ связать эти два массива, так что если приложение устанавливает один элемент одного из массивов, соответствующий элемент массива другого автоматически устанавливается одновременно,в правильном формате.
Я рассмотрел возможность использования какого-либо вида привязки, но, видимо, Winforms не будет связывать свойства, только WPF.Я также рассмотрел возможность использования Set каждого свойства, чтобы иметь логику для установки элемента другого (см. Ниже), но я не могу понять, как настроить Set для доступа к отдельным элементам массива (возможно, к индексатору, хотя я не уверенесли это правильный путь, так как я ничего о них не знаю).
Вот код, который у меня есть на данный момент, и, конечно, он не работает, потому что он не знает, как приравнять массив к intв логическом утверждении.
Любая помощь с решением будет принята с благодарностью.Спасибо.
public class SystemStatus
{
public string[] strStatus
{
get
{
return strStatus;
}
set
{
strStatus = value;
binStatus = value == "closed" ? 1 : 0;
}
}
public int[] binStatus
{
get
{
return binStatus;
}
set
{
binStatus = value;
strStatus = value == 1 ? "closed" : "open";
}
}