private void SetPointX(double?value) { if (_sceneState != null) { switch (_sceneState.ColorMode) { case "ct": _mirek = ColourHelper.GetMirekFromX(value); _sceneState.SetSaturationAndColourTemperature(_sceneStates.Connection, _saturation, _mirek); RaisePropertyChanged("Mirek"); RaisePropertyChanged("Kelvin"); break; case "xy": if (value != null) { _sceneState.CIEColor[0] = value.Value; } break; case "hs": _hue = ColourHelper.GetHueFromX(value); _sceneState.SetSaturationAndHue(_sceneStates.Connection, _saturation, _hue); RaisePropertyChanged("Hue"); break; } RaisePropertyChanged("Color"); } }