From 89a8a51b800dd1e3fbcfa94193019bc68d1db437 Mon Sep 17 00:00:00 2001 From: NaBian <836904362@qq.com> Date: Thu, 5 Jul 2018 17:16:04 +0800 Subject: [PATCH] colorpicker --- .gitignore | 1 + HandyControl/Controls/ColorPicker.xaml | 18 +----------------- HandyControl/Controls/ColorPicker.xaml.cs | 15 ++++----------- 3 files changed, 6 insertions(+), 28 deletions(-) diff --git a/.gitignore b/.gitignore index 3a993721..ef0b0c17 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /HandyControlDemo/bin/Debug /HandyControlDemo/obj/Debug /HandyControl.sln.DotSettings.user +.vs/HandyControl/DesignTimeBuild/.dtbcache diff --git a/HandyControl/Controls/ColorPicker.xaml b/HandyControl/Controls/ColorPicker.xaml index 3aa4cecb..2238d456 100644 --- a/HandyControl/Controls/ColorPicker.xaml +++ b/HandyControl/Controls/ColorPicker.xaml @@ -24,22 +24,6 @@ - @@ -67,7 +51,7 @@ - + diff --git a/HandyControl/Controls/ColorPicker.xaml.cs b/HandyControl/Controls/ColorPicker.xaml.cs index 22350188..6ee1e329 100644 --- a/HandyControl/Controls/ColorPicker.xaml.cs +++ b/HandyControl/Controls/ColorPicker.xaml.cs @@ -40,11 +40,6 @@ namespace HandyControl.Controls /// private bool IsNeedUpdateInfo { get; set; } = true; - /// - /// 颜色分值 - /// - private const double ColorInterval = 1 / 6.0; - /// /// 颜色选取面板宽度 /// @@ -416,11 +411,11 @@ namespace HandyControl.Controls sub = 255 - common; } var scale = sub / 255.0; - var scaleTotal = ColorInterval * (cIndex - direc) + scale * ColorInterval; + var scaleTotal = cIndex - direc + scale; IsNeedUpdateInfo = false; if (!SliderColor.IsMouseOver && !SliderOpacity.IsMouseOver) { - SliderColor.Value = SliderColor.Maximum * scaleTotal; + SliderColor.Value = scaleTotal; } IsNeedUpdateInfo = true; } @@ -438,10 +433,8 @@ namespace HandyControl.Controls private void SliderColor_OnValueChanged(object sender, RoutedPropertyChangedEventArgs e) { if (!_isLoaded || !IsNeedUpdateInfo) return; - var newValue = e.NewValue; - var div = newValue / ColorInterval; - var index = Math.Min(5, (int)Math.Floor(newValue / ColorInterval)); - var sub = div - index; + var index = Math.Min(5, (int)Math.Floor(e.NewValue)); + var sub = e.NewValue - index; var range = _colorRangeList[index]; var color = range.GetColor(sub);