private void ContentSelectorEditor_EditorCreating(object sender, ContentSelectorEditor.EditorCreateEventArgs e) { var switchExpr = e.PropertyDescriptor.Name; switch (switchExpr) { case var @case when @case == bParamPropName + Conversions.ToString(1): if (CbEditorBParam1 is object) { e.Editor = CbEditorBParam1; } break; case var case1 when case1 == bParamPropName + Conversions.ToString(2): if (CbEditorBParam2 is object) { e.Editor = CbEditorBParam2; } break; case var @case3 when @case3 == bParamPropName + Conversions.ToString(3): if (CbEditorBParam3 is object) { e.Editor = CbEditorBParam3; } break; case var case4 when case4 == bParamPropName + Conversions.ToString(4): if (CbEditorBParam4 is object) { e.Editor = CbEditorBParam4; } break; case var case2 when case2 == behaviorPropName: { if (CbEditorBehavAddr is object) { e.Editor = CbEditorBehavAddr; } break; } } }
private void ContentSelectorEditor_EditorCreated(object sender, ContentSelectorEditor.EditorCreateEventArgs e) { var switchExpr = e.PropertyDescriptor.Name.ToString(); switch (switchExpr) { case var @case when @case == bParamPropName + Conversions.ToString(1): { if (CbEditorBParam1 != e.Editor) { CbEditorBParam1 = e.Editor; CbEditorBParam1.ValueType = TypeCode.Byte; CbEditorBParam1.DisplayMember = nameof(BehaviorInfo.BParamValue.ValueText); CbEditorBParam1.ValueMember = nameof(BehaviorInfo.BParamValue.Value); CbEditorBParam1.DropDownColumns = nameof(BehaviorInfo.BParamValue.ValueText) + "," + nameof(BehaviorInfo.BParamValue.Name); CbEditorBParam1.DropDownColumnsHeaders = $"Value{Constants.vbNewLine}Name"; CbEditorBParam1.DropDownHeight = 300; CbEditorBParam1.DropDownWidth = 200; } break; } case var case1 when case1 == bParamPropName + Conversions.ToString(2): { if (CbEditorBParam2 != e.Editor) { CbEditorBParam2 = e.Editor; CbEditorBParam2.ValueType = TypeCode.Byte; CbEditorBParam2.DisplayMember = nameof(BehaviorInfo.BParamValue.ValueText); CbEditorBParam2.ValueMember = nameof(BehaviorInfo.BParamValue.Value); CbEditorBParam2.DropDownColumns = nameof(BehaviorInfo.BParamValue.ValueText) + "," + nameof(BehaviorInfo.BParamValue.Name); CbEditorBParam2.DropDownColumnsHeaders = $"Value{Constants.vbNewLine}Name"; CbEditorBParam2.DropDownHeight = 300; CbEditorBParam2.DropDownWidth = 200; } break; } case var case3 when case3 == bParamPropName + Conversions.ToString(3): { if (CbEditorBParam3 != e.Editor) { CbEditorBParam3 = e.Editor; CbEditorBParam3.ValueType = TypeCode.Byte; CbEditorBParam3.DisplayMember = nameof(BehaviorInfo.BParamValue.ValueText); CbEditorBParam3.ValueMember = nameof(BehaviorInfo.BParamValue.Value); CbEditorBParam3.DropDownColumns = nameof(BehaviorInfo.BParamValue.ValueText) + "," + nameof(BehaviorInfo.BParamValue.Name); CbEditorBParam3.DropDownColumnsHeaders = $"Value{Constants.vbNewLine}Name"; CbEditorBParam3.DropDownHeight = 300; CbEditorBParam3.DropDownWidth = 200; } break; } case var case4 when case4 == bParamPropName + Conversions.ToString(4): { if (CbEditorBParam4 != e.Editor) { CbEditorBParam4 = e.Editor; CbEditorBParam4.ValueType = TypeCode.Byte; CbEditorBParam4.DisplayMember = nameof(BehaviorInfo.BParamValue.ValueText); CbEditorBParam4.ValueMember = nameof(BehaviorInfo.BParamValue.Value); CbEditorBParam4.DropDownColumns = nameof(BehaviorInfo.BParamValue.ValueText) + "," + nameof(BehaviorInfo.BParamValue.Name); CbEditorBParam4.DropDownColumnsHeaders = $"Value{Constants.vbNewLine}Name"; CbEditorBParam4.DropDownHeight = 300; CbEditorBParam4.DropDownWidth = 200; } break; } case var case2 when case2 == behaviorPropName: { if (CbEditorBehavAddr != e.Editor) { CbEditorBehavAddr = e.Editor; CbEditorBehavAddr.ValueType = TypeCode.UInt32; CbEditorBehavAddr.IntegerValueMode = Math.Max(Settings.General.IntegerValueMode, 1); CbEditorBehavAddr.DisplayMember = nameof(BehaviorInfo.BehaviorAddressText); CbEditorBehavAddr.ValueMember = nameof(BehaviorInfo.BehaviorAddress); CbEditorBehavAddr.DropDownColumns = nameof(BehaviorInfo.BehaviorAddressText) + "," + nameof(BehaviorInfo.Name); CbEditorBehavAddr.DropDownColumnsHeaders = $"Address{Constants.vbNewLine}Name"; CbEditorBehavAddr.DropDownHeight = 400; CbEditorBehavAddr.DropDownWidth = 300; CbEditorBehavAddr.DataSource = myBehaviors; // CbEditorBehavAddr.MultiColumnDisplayControl.Columns(0).AutoSize() // LoadBehaviorAddressesList() } break; } } FlushEditorHandlers(); }