@@ -324,21 +324,31 @@ private void CloseResultSetTabPage_Click(object sender, EventArgs e)
324324
325325 private void resultSetsTabControl_MouseUp ( object sender , MouseEventArgs e )
326326 {
327- if ( e . Button == MouseButtons . Right )
327+ var hitTestInfo = new TCHITTESTINFO ( e . X , e . Y ) ;
328+ int index = SendMessage ( this . resultSetsTabControl . Handle , TCM_HITTEST , IntPtr . Zero , ref hitTestInfo ) ;
329+ var hotTab = index >= 0 ? this . resultSetsTabControl . TabPages [ index ] : null ;
330+
331+ switch ( e . Button )
328332 {
329- var hitTestInfo = new TCHITTESTINFO ( e . X , e . Y ) ;
330- int index = SendMessage ( this . resultSetsTabControl . Handle , TCM_HITTEST , IntPtr . Zero , ref hitTestInfo ) ;
331- if ( index >= 0 )
332- {
333- TabPage hotTab = this . resultSetsTabControl . TabPages [ index ] ;
334- var contextMenu = new ContextMenuStrip ( this . components ) ;
335- contextMenu . Items . Add ( new ToolStripMenuItem ( "Close" , null , this . CloseResultSetTabPage_Click )
333+ case MouseButtons . Middle :
334+ if ( index >= 0 )
336335 {
337- Tag = hotTab
338- } ) ;
339- contextMenu . Items . Add ( new ToolStripMenuItem ( "Close all" , null , this . mnuCloseAllTabPages_Click , Keys . Control | Keys . Shift | Keys . F4 ) ) ;
340- contextMenu . Show ( this . resultSetsTabControl , e . Location ) ;
341- }
336+ this . CloseResultSetTabPage ( hotTab ) ;
337+ }
338+ break ;
339+
340+ case MouseButtons . Right :
341+ if ( index >= 0 )
342+ {
343+ var contextMenu = new ContextMenuStrip ( this . components ) ;
344+ contextMenu . Items . Add ( new ToolStripMenuItem ( "Close" , null , this . CloseResultSetTabPage_Click )
345+ {
346+ Tag = hotTab
347+ } ) ;
348+ contextMenu . Items . Add ( new ToolStripMenuItem ( "Close all" , null , this . mnuCloseAllTabPages_Click , Keys . Control | Keys . Shift | Keys . F4 ) ) ;
349+ contextMenu . Show ( this . resultSetsTabControl , e . Location ) ;
350+ }
351+ break ;
342352 }
343353 }
344354
@@ -3311,7 +3321,8 @@ private async void ExecuteReader(CommandBehavior commandBehavior)
33113321 {
33123322 this . AddInfoMessage ( new InfoMessage ( LocalTime . Default . Now , InfoMessageSeverity . Information , "Opening connection..." ) ) ;
33133323 await this . connection . OpenAsync ( CancellationToken . None ) ;
3314- this . AddInfoMessage ( new InfoMessage ( LocalTime . Default . Now , InfoMessageSeverity . Information , "Connection opened successfully." ) ) ;
3324+ this . AddInfoMessage ( new InfoMessage ( LocalTime . Default . Now , InfoMessageSeverity . Information ,
3325+ "Connection opened successfully." ) ) ;
33153326 }
33163327 else
33173328 {
@@ -3341,6 +3352,7 @@ private async void ExecuteReader(CommandBehavior commandBehavior)
33413352 } while ( dataReader . NextResult ( ) ) ;
33423353
33433354 this . ShowDataSet ( dataSet ) ;
3355+ this . tabControl . SelectedTab = this . resultSetsTabPage ;
33443356 }
33453357 finally
33463358 {
@@ -3381,8 +3393,8 @@ private void ExecuteQuerySingleRow()
33813393 {
33823394 do
33833395 {
3384- DataTable schemaTable = this . provider . GetSchemaTable ( dataReader ) ;
3385- IDataReaderHelper dataReaderHelper = this . provider . CreateDataReaderHelper ( dataReader ) ;
3396+ var schemaTable = this . provider . GetSchemaTable ( dataReader ) ;
3397+ var dataReaderHelper = this . provider . CreateDataReaderHelper ( dataReader ) ;
33863398 int rowCount = 0 ;
33873399
33883400 while ( dataReader . Read ( ) )
@@ -3418,10 +3430,12 @@ private void ExecuteQuerySingleRow()
34183430 }
34193431 }
34203432 } while ( dataReader . NextResult ( ) ) ;
3433+
34213434 dataReader . Close ( ) ;
34223435 }
34233436
34243437 this . ShowDataSet ( dataSet ) ;
3438+ this . tabControl . SelectedTab = this . resultSetsTabPage ;
34253439 }
34263440 catch ( Exception ex )
34273441 {
0 commit comments