コード例 #1
0
        protected override void OnPreviewMouseWheel(MouseWheelEventArgs e)
        {
            if ((Keyboard.Modifiers & ModifierKeys.Control) > 0)
            {
                var Value = SelectedValue.To <double>();

                if (e.Delta > 0)
                {
                    if (WheelTick == 0)
                    {
                        var i = Sizes.IndexOf(SelectedValue.To <double>()) + 1;
                        if (i <= Sizes.Count - 1)
                        {
                            Value = Sizes[i];
                        }
                    }
                    else
                    {
                        if (Value + WheelTick <= WheelTickMax)
                        {
                            Value += WheelTick;
                        }
                    }
                }
                else
                {
                    if (WheelTick == 0)
                    {
                        var i = Sizes.IndexOf(SelectedValue.To <double>()) - 1;
                        if (i >= 0)
                        {
                            Value = Sizes[i];
                        }
                    }
                    else
                    {
                        if (Value - WheelTick >= WheelTickMin)
                        {
                            Value -= WheelTick;
                        }
                    }
                }

                SelectedValue = Value;
            }
        }