示例#1
0
        protected override void OnKeyUp(KeyEventArgs e)
        {
            base.OnKeyUp(e);

            var newValue = value;

            if (!(e.Alt || e.Control || e.Shift))
            {
                if (e.KeyCode == Keys.Up)
                {
                    if (!TriColorValueHelper.IsFirst(newValue))
                    {
                        newValue  = TriColorValueHelper.PreviousValue(newValue);
                        e.Handled = true;
                    }
                }
                else if (e.KeyCode == Keys.Down)
                {
                    if (!TriColorValueHelper.IsLast(newValue))
                    {
                        newValue  = TriColorValueHelper.NextValue(newValue);
                        e.Handled = true;
                    }
                }
            }
            Value = newValue;
        }
 // Return the fragment for the next value
 protected override IRawElementProviderFragment GetNextSibling()
 {
     if (!TriColorValueHelper.IsLast(_value))
     {
         return(new TriColorFragmentProvider(
                    _control,
                    fragmentRoot,
                    TriColorValueHelper.NextValue(_value)));
     }
     return(null);
 }