예제 #1
0
 private void OverrideKey(object sender, KeyArgs args)
 {
     if (_dictOverrideKeys.ContainsKey(args.KeyCode))
     {
         var newKeyCode = _dictOverrideKeys[args.KeyCode];
         if (newKeyCode == null)
         {
             args.Cancel = true;
         }
         else
         {
             args.KeyCode = (int)newKeyCode;
         }
     }
 }
예제 #2
0
        protected virtual void OnKeyChange(KeyArgs args)
        {
            if (args == null)
            {
                throw new ArgumentNullException("args");
            }
            var keyChangeDelegate = KeyChange;

            if (keyChangeDelegate != null)
            {
                keyChangeDelegate(this, args);
            }

            var keyChangeAsyncDelegate = KeyChangeAsync;

            if (keyChangeAsyncDelegate != null)
            {
                Task.Factory.StartNew(() => keyChangeAsyncDelegate(this, args));
            }
        }