Best way to handle such combination is to override ProcessCmdKey, the key combination will be caught anytime.
Example:
Paste the overriden function below in your form.
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
End Sub
Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
If ((keyData And Keys.R) = Keys.R) And ((keyData And Keys.Control) = Keys.Control) Then
MessageBox.Show("CTRL+R pressed")
End If
Return MyBase.ProcessCmdKey(msg, keyData)
End Function
End Class
Note : one would be tempted to use Control.ModifierKeys to catch CTRL but it won't work, the right approach is to use the one above using the bitwise And operator against keyData
.