public void Setup() { m_Converter = new DoubleToIntegerConverter(); }
public void Setup() { var converter = new DoubleToIntegerConverter(); m_Converter = new GrayscaleConverter(converter); }
void SetSlidersAndBindings() { // Don't handle ValueChange events from Sliders! ignoreSliderValueChanges = true; double sliderMax = 1; string[] format = null; IValueConverter valueConverter = null; // Set local variables for color mode. switch (currentColorMode) { case ColorMode.RgbHex: sliderMax = 255; format = rgbHexFormat; valueConverter = new DoubleToIntegerConverter(); break; case ColorMode.RgbFloat: format = rgbFloatFormat; break; case ColorMode.Hsl: format = hslFormat; break; } // Bind the labels to the sliders. for (int i = 0; i < 3; i++) { sliders[i].Maximum = sliderMax; labels[i].BindingContext = sliders[i]; labels[i].SetBinding(Label.TextProperty, new Binding("Value", BindingMode.OneWay, valueConverter, null, format[i])); } // Now set the slider values. Color currentColor = this.currentColor; switch (currentColorMode) { case ColorMode.RgbHex: sliders[0].Value = 255 * currentColor.R; sliders[1].Value = 255 * currentColor.G; sliders[2].Value = 255 * currentColor.B; break; case ColorMode.RgbFloat: sliders[0].Value = currentColor.R; sliders[1].Value = currentColor.G; sliders[2].Value = currentColor.B; break; case ColorMode.Hsl: sliders[0].Value = currentColor.Hue; sliders[1].Value = currentColor.Saturation; sliders[2].Value = currentColor.Luminosity; break; } // Resume handling ValueChange events. ignoreSliderValueChanges = false; // Sync up the colors and sliders. SetColorFromSliders(); }