private static void OnStatVarUpd(DependencyObject d, DependencyPropertyChangedEventArgs e) { BitVar con = d as BitVar; if (con.ValState != null) { for (int i = 0; i < con.ValState.Count; i++) { BitPosValue val = (BitPosValue)Enum.Parse(typeof(BitPosValue), e.NewValue.ToString()); if (val.HasFlag(con.KeyBit[i])) { con.ValState[i].ValueState = true; } else { con.ValState[i].ValueState = false; } } } #if DEBUG if (con.ValState == null) { Debug.WriteLine("WARNING незаплонированное изменение переменной"); } #endif }
public static void ComBitK(string varID, string VarName, object PARAM, List <BitPosValue> KeyBit) { int i = 0; if (!int.TryParse(PARAM.ToString(), out i)) { throw new Exception("В качестве парамет параметра Комманды должен быть инт"); } BitPosValue _val = KeyBit[i]; /* var VaRSend = VHClass.Instance.GetVHPC(varID).VHCurr.GetIntVariable(VarName); * VaRSend.AutoSend = true; * VaRSend.Value = (int)_val;*/ /* * var v = VariablesDataContext.GetNamedContext(varID).VariablesChannel.GetIntVariable(VarName); * v.AutoSend = true; * v.Value = (int)_val; */ }