private void InputStretchParamsButton_Click(object sender, EventArgs e) { // Fire the OnStretchInputsEntered event and provide the stretch parameter input. if (OnStretchInputsEntered != null) { // Create a new StretchParametersEventArgs to contain the input values. StretchParameters inputStretchParams = null; // Create the right type of stretch parameters defined by the user. switch (_stretchParamsType) { // - Minimum and maximum RGB values. case "Min Max RGB": // Get the models that contains the min/max red, green, and blue picker choices. RgbValuePickerModel minRgbModel = _minRgbPicker.Model as RgbValuePickerModel; RgbValuePickerModel maxRgbModel = _maxRgbPicker.Model as RgbValuePickerModel; // Read min/max RGB values that were chosen. double[] minValues = { minRgbModel.SelectedRed, minRgbModel.SelectedGreen, minRgbModel.SelectedBlue }; double[] maxValues = { maxRgbModel.SelectedRed, maxRgbModel.SelectedGreen, maxRgbModel.SelectedBlue }; // Create a new MinMaxStretchParameters object with the values. inputStretchParams = new MinMaxStretchParameters(minValues, maxValues); break; // - Minimum and maximum percent clip values. case "% Clip": // Read min/max percent values that were chosen. double minPercent = _minPercentSlider.Value; double maxPercent = _maxPercentSlider.Value; inputStretchParams = new PercentClipStretchParameters(minPercent, maxPercent); break; // Standard deviation factor. case "Std Dev": // Get the model that contains the standard deviation factor choices. StdDevFactorPickerModel factorModel = _stdDevPicker.Model as StdDevFactorPickerModel; // Get the selected factor. double standardDevFactor = factorModel.SelectedFactor; inputStretchParams = new StandardDeviationStretchParameters(standardDevFactor); break; } // Create a new StretchParametersEventArgs and provide the stretch parameters. StretchParametersEventArgs inputParamsEventArgs = new StretchParametersEventArgs(inputStretchParams); // Raise the event with the custom arguments. OnStretchInputsEntered(sender, inputParamsEventArgs); } }
public override void LoadView() { View = new UIView(); UIScrollView scrollView = new UIScrollView(); scrollView.TranslatesAutoresizingMaskIntoConstraints = false; View.AddSubviews(scrollView); UIStackView formContainer = new UIStackView(); formContainer.TranslatesAutoresizingMaskIntoConstraints = false; formContainer.Spacing = 8; formContainer.LayoutMarginsRelativeArrangement = true; formContainer.Alignment = UIStackViewAlignment.Center; formContainer.LayoutMargins = new UIEdgeInsets(8, 8, 8, 8); formContainer.Axis = UILayoutConstraintAxis.Vertical; // Add controls here. UILabel minLabel = new UILabel(); minLabel.TranslatesAutoresizingMaskIntoConstraints = false; minLabel.Text = "Minimum (Red | Green | Blue)"; minLabel.TextAlignment = UITextAlignment.Center; formContainer.AddArrangedSubview(minLabel); UIPickerView minPicker = new UIPickerView(); minPicker.TranslatesAutoresizingMaskIntoConstraints = false; _minPickerModel = new RgbValuePickerModel(0, 0, 0); minPicker.HeightAnchor.ConstraintEqualTo(60).Active = true; minPicker.Model = _minPickerModel; formContainer.AddArrangedSubview(minPicker); UILabel maxLabel = new UILabel(); maxLabel.TranslatesAutoresizingMaskIntoConstraints = false; maxLabel.Text = "Maximum (Red | Green | Blue)"; maxLabel.TextAlignment = UITextAlignment.Center; formContainer.AddArrangedSubview(maxLabel); _maxPicker = new UIPickerView(); _maxPicker.TranslatesAutoresizingMaskIntoConstraints = false; _maxPickerModel = new RgbValuePickerModel(255, 255, 255); _maxPicker.HeightAnchor.ConstraintEqualTo(60).Active = true; _maxPicker.Model = _maxPickerModel; formContainer.AddArrangedSubview(_maxPicker); NavigationItem.RightBarButtonItem = new UIBarButtonItem("Apply", UIBarButtonItemStyle.Plain, ApplyButton_Clicked); scrollView.AddSubview(formContainer); scrollView.TopAnchor.ConstraintEqualTo(View.TopAnchor).Active = true; scrollView.LeadingAnchor.ConstraintEqualTo(View.LeadingAnchor).Active = true; scrollView.TrailingAnchor.ConstraintEqualTo(View.TrailingAnchor).Active = true; scrollView.BottomAnchor.ConstraintEqualTo(View.BottomAnchor).Active = true; formContainer.TopAnchor.ConstraintEqualTo(scrollView.TopAnchor).Active = true; formContainer.LeadingAnchor.ConstraintEqualTo(scrollView.LeadingAnchor).Active = true; formContainer.TrailingAnchor.ConstraintEqualTo(scrollView.TrailingAnchor).Active = true; formContainer.BottomAnchor.ConstraintEqualTo(scrollView.BottomAnchor).Active = true; formContainer.WidthAnchor.ConstraintEqualTo(scrollView.WidthAnchor).Active = true; }