title: How to pass KeyEventArgs parameters to the command
body: <p>Here is my code:</p>
  <p><strong>XAML:</strong></p>
  <pre><code>&lt;intr:Interaction.Triggers&gt;
      &lt;intr:EventTrigger EventName=&quot;KeyDown&quot;&gt;
          &lt;intr:InvokeCommandAction Command=&quot;{Binding KeyDownEvent}&quot; /&gt;
      &lt;/intr:EventTrigger&gt;
  &lt;/intr:Interaction.Triggers&gt;
  </code></pre>
  <p><strong>Code</strong>:</p>
  <pre><code>public DelegateCommand&lt;KeyEventArgs&gt; KeyDownEvent { get; private set; }
  
  public MainWindowViewModel()
  {
          KeyDownEvent = new DelegateCommand&lt;KeyEventArgs&gt;(KeyDownEventHandler);
  }
  
  private void KeyDownEventHandler(KeyEventArgs args) //args is always null
  {
      try
      {
          if (args.Key == Key.System &amp;&amp; args.SystemKey == Key.F4)
          {
              args.Handled = true;
          }
      }
      catch (Exception ex)
      {
  
      }
  }
  </code></pre>
  <p>When press any key the event is fired and the <code>KeyDownEventHandler</code> is invoked, but the <code>args</code> parameter is always <code>null</code>.</p>