Ejemplo n.º 1
0
        public override void OnApplyTemplate()
        {
            base.OnApplyTemplate();

            ColorSamplerSource = base.GetTemplateChild("ColorSamplerSource") as FrameworkElement;
            if (ColorSamplerSource != null)
            {
                //_colorSamplerSourceBitmap = new WriteableBitmap(_colorSamplerSource, null);
                ColorSamplerSource.MouseLeftButtonDown += new MouseButtonEventHandler(OnMouseLeftButtonDown);
                ColorSamplerSource.MouseLeftButtonUp   += new MouseButtonEventHandler(OnMouseLeftButtonUp);
                ColorSamplerSource.MouseMove           += new MouseEventHandler(OnMouseMove);
                ColorSamplerSource.MouseEnter          += new MouseEventHandler(OnMouseEnter);
                ColorSamplerSource.MouseLeave          += new MouseEventHandler(OnMouseLeave);
            }
            ColorSamplerCircleSelector = base.GetTemplateChild("ColorSamplerCircleSelector") as RadioButton;
            if (ColorSamplerCircleSelector != null)
            {
                ColorSamplerCircleSelector.Checked  += OnColorSamplerSelectorChecked;
                ColorSamplerCircleSelector.IsChecked = this.ColorSamplerMode == ColorSamplerMode.Circle;
            }
            ColorSamplerHexagonSelector = base.GetTemplateChild("ColorSamplerHexagonSelector") as RadioButton;
            if (ColorSamplerHexagonSelector != null)
            {
                ColorSamplerHexagonSelector.Checked  += OnColorSamplerSelectorChecked;
                ColorSamplerHexagonSelector.IsChecked = this.ColorSamplerMode == ColorSamplerMode.Hexagon;
            }
            ColorSamplerRectSelector = base.GetTemplateChild("ColorSamplerRectSelector") as RadioButton;
            if (ColorSamplerRectSelector != null)
            {
                ColorSamplerRectSelector.Checked  += OnColorSamplerSelectorChecked;
                ColorSamplerRectSelector.IsChecked = this.ColorSamplerMode == ColorSamplerMode.Rectangle;
            }

            ColorSamplerOpacitySlider = base.GetTemplateChild("ColorSamplerOpacitySlider") as XamNumericSlider;
            if (ColorSamplerOpacitySlider != null)
            {
                ColorSamplerOpacitySlider.ThumbValueChanged += OnColorSamplerOpacitySliderChanged;
            }
            InitializeSelection(this.SelectedBrush);
            //InitializeColorSelection(InitialColor);
            //this.SelectedColor = ColorPicker.InitialColor;
            //this.SelectedBrush = new SolidColorBrush(ColorPicker.InitialColor);
            this.IsTemplateApplied = true;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Adds a xam numeric slider. Called by the CreateUIElement method.
        /// </summary>
        /// <param name="panel"></param>
        private void AddSlider(LayoutPanel panel)
        {
            slider = new XamNumericSlider()
            {
                MinValue = showAbsolute? min : 0,
                MaxValue = showAbsolute ? max : 100
            };

            //slider.Width = 200;

            if (labels != null)
            {
                //set custom labels to the slider
            }

            SliderTickMarks tickMarks = new SliderTickMarks
            {
                NumberOfTickMarks = 100 / tickSpace - 1,
                UseFrequency      = false,
            };

            SliderTickMarks tickMarksLabels = new SliderTickMarks
            {
                NumberOfTickMarks           = 100 / tickSpace - 1,
                UseFrequency                = false,
                HorizontalTickMarksTemplate = CreateTemplate(typeof(TextBlock))
            };

            if ((bool)Input.GetInput("showTickMarks", true))
            {
                slider.TickMarks.Add(tickMarks);
                slider.TickMarks.Add(tickMarksLabels);
            }

            if (allowText)
            {
                slider.ThumbValueChanged += Slider_ThumbValueChanged;
            }

            panel.Add(slider, width);
        }