LboxGrid メソッド (2)
  EnterToTab



  
Private bEnterToTab As Boolean

' ******************************************************
' Enter To Tab プロパティ
' ******************************************************
<System.ComponentModel.Description("Enterキーの動作をTABキーと同じにする"), _
System.ComponentModel.Browsable(True), _
System.ComponentModel.DefaultValue(False)> _
Public Property isEnterToTab() As Boolean
	Get
		Return bEnterToTab
	End Get
	Set(ByVal value As Boolean)
		bEnterToTab = value
	End Set
End Property

' ******************************************************
' Enter To Tab メソッド
' ******************************************************
Public Sub EnterToTab(ByVal flg As Boolean)

	bEnterToTab = flg

End Sub

' ******************************************************
' Enterキーが押されると発生するイベント
' ******************************************************
Public Event EnterKey(ByVal e As lightbox.EnterKeyEventArgs)

' ******************************************************
' Enter To Tab の実際の処理
' ******************************************************
Protected Overrides Function ProcessDialogKey( _
  ByVal keyData As Keys) As Boolean
	If (keyData And Keys.KeyCode) = Keys.Enter Then
		' ******************************************************
		' EnterKeyイベントの処理
		' ******************************************************
		Dim e As New lightbox.EnterKeyEventArgs()
		e.EnterToTab = bEnterToTab
		e.Shift = ((Control.ModifierKeys And Keys.Shift) = Keys.Shift)
		e.Alt = ((Control.ModifierKeys And Keys.Alt) = Keys.Alt)
		e.Control = ((Control.ModifierKeys And Keys.Control) = Keys.Control)
		RaiseEvent EnterKey(e)

		If bEnterToTab Then
			Return Me.ProcessTabKey(keyData)
		End If
	End If
	Return MyBase.ProcessDialogKey(keyData)
End Function

Protected Overrides Function ProcessDataGridViewKey( _
  ByVal e As KeyEventArgs) As Boolean
	If e.KeyCode = Keys.Enter Then
		' ******************************************************
		' EnterKeyイベントの処理
		' ******************************************************
		Dim e2 As New lightbox.EnterKeyEventArgs()
		e2.EnterToTab = bEnterToTab
		e2.Shift = e.Shift
		e2.Alt = ((Control.ModifierKeys And Keys.Alt) = Keys.Alt)
		e2.Control = ((Control.ModifierKeys And Keys.Control) = Keys.Control)
		RaiseEvent EnterKey(e2)

		If bEnterToTab Then
			Return Me.ProcessTabKey(e.KeyCode)
		End If
	End If
	Return MyBase.ProcessDataGridViewKey(e)
End Function
  


↓参考
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.datagridview.processdialogkey.aspx











   
home    create:2008/01/25  update:2009/05/01   InfoBoard Version 1.00 (Perl).