Defines a KeyProgram event argument : Index represents the index of the command concerned by the event, in the command list
Inheritance: KeyboardContextEventArgs
        void OnKeyDownCommands_CommandUpdated( object sender, KeyProgramCommandsEventArgs e )
        {
            if( Commands[e.Index] == null ) throw new IndexOutOfRangeException( String.Format( vmCollectionOutOfRangeErrorMessage, "updated" ) );
            if( _model.OnKeyDownCommands.Commands[e.Index] == null ) throw new IndexOutOfRangeException( String.Format( ownCollectionOutOfRangeErrorMessage, "updated" ) );

            Commands[e.Index] = e.KeyProgram.Commands[e.Index];
        }
 void OnKeyDownCommands_CommandDeleted( object sender, KeyProgramCommandsEventArgs e )
 {
     if( Commands[e.Index] == null ) throw new IndexOutOfRangeException( String.Format( vmCollectionOutOfRangeErrorMessage, "deleted" ) );
     Commands.RemoveAt( e.Index );
 }
 void OnKeyDownCommands_CommandsCleared( object sender, KeyProgramCommandsEventArgs e )
 {
     Commands.Clear();
 }
 void OnKeyDownCommands_CommandInserted( object sender, KeyProgramCommandsEventArgs e )
 {
     if( Model.OnKeyDownCommands.Commands[e.Index] == null ) throw new IndexOutOfRangeException( String.Format( ownCollectionOutOfRangeErrorMessage, "inserted" ) );
     Commands.Insert( e.Index, e.KeyProgram.Commands[e.Index] );
 }