This example adds two custom key action mappings so that the same day in the next month is selected when the Tab key is pressed, and the same day in the previous month is activated when Ctrl+Tab is pressed.
Imports Infragistics.Win
Imports Infragistics.Win.UltraWinSchedule
Imports Infragistics.Win.UltraWinSchedule.MonthViewMulti
Private Sub CustomizeKeyActionMappings()
' Create a new KeyActionMapping object, which we will add to
' the control's KeyActionMappings collection. The new KeyActionMapping
' object will have the following property settings:
'
' KeyCode = Tab
' ActionCode = SameDayInNextMonth
' StateDisallowed = None
' StateRequired = ActiveDay
' SpecialKeysDisallowed = All (disallow the action if either Alt, Ctrl, or Shift is pressed)
' SpecialKeysRequired = 0 (no special keys required to perform the action)
'
Dim nextMonthMapping As KeyActionMapping = _
New KeyActionMapping(Keys.Tab, MonthViewMultiAction.SameDayInNextMonth, 0, MonthViewMultiState.ActiveDay, SpecialKeys.All, 0)
' Create another new KeyActionMapping object, which we will add to
' the control's KeyActionMappings collection. The new KeyActionMapping
' object will have the following property settings:
'
' KeyCode = Tab
' ActionCode = SameDayInPreviousMonth
' StateDisallowed = None
' StateRequired = ActiveDay
' SpecialKeysDisallowed = AltShift (disallow the action if either Alt or Shift is pressed)
' SpecialKeysRequired = Ctrl
'
Dim prevMonthMapping As KeyActionMapping = _
New KeyActionMapping(Keys.Tab, MonthViewMultiAction.SameDayInPreviousMonth, 0, MonthViewMultiState.ActiveDay, SpecialKeys.AltShift, SpecialKeys.Ctrl)
' Remove all KeyActionMappings that use the Tab key
Dim keyMapping As KeyActionMapping
For Each keyMapping In Me.ultraMonthViewMulti1.KeyActionMappings
If (keyMapping.KeyCode = Keys.Tab) Then
Me.ultraMonthViewMulti1.KeyActionMappings.Remove(keyMapping)
End If
Next
' Now we can add the custom mappings
Me.ultraMonthViewMulti1.KeyActionMappings.Add(nextMonthMapping)
Me.ultraMonthViewMulti1.KeyActionMappings.Add(prevMonthMapping)
End Sub
'Declaration
Public Enum MonthViewMultiAction
Inherits System.Enum
using Infragistics.Win;
using Infragistics.Win.UltraWinSchedule;
using Infragistics.Win.UltraWinSchedule.MonthViewMulti;
private void CustomizeKeyActionMappings()
{
// Create a new KeyActionMapping object, which we will add to
// the control's KeyActionMappings collection. The new KeyActionMapping
// object will have the following property settings:
//
// KeyCode = Tab
// ActionCode = SameDayInNextMonth
// StateDisallowed = None
// StateRequired = ActiveDay
// SpecialKeysDisallowed = All (disallow the action if either Alt, Ctrl, or Shift is pressed)
// SpecialKeysRequired = 0 (no special keys required to perform the action)
//
KeyActionMapping nextMonthMapping =
new KeyActionMapping( Keys.Tab, // KeyCode
MonthViewMultiAction.SameDayInNextMonth, // ActionCode
0, // StateDisallowed
MonthViewMultiState.ActiveDay, // StateRequired
SpecialKeys.All, // SpecialKeysDisallowed
0 // SpecialKeysRequired
);
// Create another new KeyActionMapping object, which we will add to
// the control's KeyActionMappings collection. The new KeyActionMapping
// object will have the following property settings:
//
// KeyCode = Tab
// ActionCode = SameDayInPreviousMonth
// StateDisallowed = None
// StateRequired = ActiveDay
// SpecialKeysDisallowed = AltShift (disallow the action if either Alt or Shift is pressed)
// SpecialKeysRequired = Ctrl
//
KeyActionMapping prevMonthMapping =
new KeyActionMapping( Keys.Tab, // KeyCode
MonthViewMultiAction.SameDayInPreviousMonth, // ActionCode
0, // StateDisallowed
MonthViewMultiState.ActiveDay, // StateRequired
SpecialKeys.AltShift, // SpecialKeysDisallowed
SpecialKeys.Ctrl // SpecialKeysRequired
);
// Remove all KeyActionMappings that use the Tab key
foreach( KeyActionMapping keyMapping in this.ultraMonthViewMulti1.KeyActionMappings )
{
if ( keyMapping.KeyCode == Keys.Tab )
this.ultraMonthViewMulti1.KeyActionMappings.Remove( keyMapping );
}
// Now we can add the custom mappings
this.ultraMonthViewMulti1.KeyActionMappings.Add( nextMonthMapping );
this.ultraMonthViewMulti1.KeyActionMappings.Add( prevMonthMapping );
}
'Declaration
Public Enum MonthViewMultiAction
Inherits System.Enum
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2