Click here to Skip to main content
15,887,350 members
Home / Discussions / C#
   

C#

 
GeneralRe: catch tabpage change Pin
Heath Stewart17-Feb-04 4:07
protectorHeath Stewart17-Feb-04 4:07 
GeneralRe: catch tabpage change Pin
Anonymous17-Feb-04 8:44
Anonymous17-Feb-04 8:44 
GeneralRe: catch tabpage change Pin
Heath Stewart17-Feb-04 9:21
protectorHeath Stewart17-Feb-04 9:21 
GeneralRe: catch tabpage change Pin
Anonymous17-Feb-04 10:56
Anonymous17-Feb-04 10:56 
GeneralRe: catch tabpage change Pin
Heath Stewart17-Feb-04 12:14
protectorHeath Stewart17-Feb-04 12:14 
GeneralRe: catch tabpage change Pin
Anonymous17-Feb-04 12:59
Anonymous17-Feb-04 12:59 
GeneralRe: catch tabpage change Pin
troels_sorensen18-Feb-04 21:15
troels_sorensen18-Feb-04 21:15 
GeneralRe: catch tabpage change Pin
Heath Stewart19-Feb-04 3:30
protectorHeath Stewart19-Feb-04 3:30 
As with all Windows Common Controls, you can find these in the Platform SDK on MSDN Library Online[^]. For the common controls, see http://msdn.microsoft.com/library/en-us/shellcc/platform/commctls/wincontrols.asp[^]. Under "Individual Controls" you'll find documentation on the control messages you want. You should take a look at the rest of the stuff, too.

You can try overriding OnKeyDown, although IIRC Ctrl+Tab is handled a little differently. You can find more information about handling the notification messages in the application pump (using an IMessageFilter perhaps) if this is the case in the .NET Framework SDK (find the interface in the help index I mentioned) and in the Platform SDK.

In order to determine which tab he clicked on, you're going to have to do a lot of this yourself. You can override the OnMouseDown event which gives you coordinates relative to the client (TabControl). Then enumerate your TabPages and call TabControl.GetTabRect with each one (or rather, their index) and use Rectangle.Contains to see which they clicked on. Other ways most likely won't work because you stopped the tabs from changing, so the other messages that fire events in .NET won't be sent and received.

In cases when you derive a control, you should override the OnEvent method, calling base.OnEvent before or after your code (depending on the circumstances). Handle these events from outside the class. This improves performance slightly and makes for a better polymorphic design.

 

Microsoft MVP, Visual C#
My Articles
Generalpictures in a datagrid Pin
troels_sorensen17-Feb-04 3:38
troels_sorensen17-Feb-04 3:38 
GeneralRe: pictures in a datagrid Pin
Heath Stewart17-Feb-04 4:21
protectorHeath Stewart17-Feb-04 4:21 
Questionneed sql query? Pin
murali_utr17-Feb-04 3:19
murali_utr17-Feb-04 3:19 
AnswerRe: need sql query? Pin
Heath Stewart17-Feb-04 4:33
protectorHeath Stewart17-Feb-04 4:33 
Questionwhats wrong? Pin
ASGill17-Feb-04 2:16
ASGill17-Feb-04 2:16 
AnswerRe: whats wrong? Pin
Uwe Keim17-Feb-04 3:01
sitebuilderUwe Keim17-Feb-04 3:01 
AnswerRe: whats wrong? Pin
Heath Stewart17-Feb-04 3:15
protectorHeath Stewart17-Feb-04 3:15 
GeneralCustom ListBox.Items Pin
Simon Wren17-Feb-04 2:11
professionalSimon Wren17-Feb-04 2:11 
GeneralRe: Custom ListBox.Items Pin
Heath Stewart17-Feb-04 4:52
protectorHeath Stewart17-Feb-04 4:52 
GeneralWinForms: SuspendLayout on Application Pin
troels_sorensen17-Feb-04 2:06
troels_sorensen17-Feb-04 2:06 
GeneralRe: WinForms: SuspendLayout on Application Pin
Heath Stewart17-Feb-04 4:54
protectorHeath Stewart17-Feb-04 4:54 
QuestionResize all items? Pin
thomasa17-Feb-04 1:51
thomasa17-Feb-04 1:51 
AnswerRe: Resize all items? Pin
Heath Stewart17-Feb-04 4:57
protectorHeath Stewart17-Feb-04 4:57 
GeneralRe: Resize all items? Pin
je_gonzalez17-Feb-04 17:28
je_gonzalez17-Feb-04 17:28 
GeneralRe: Resize all items? Pin
Heath Stewart17-Feb-04 19:35
protectorHeath Stewart17-Feb-04 19:35 
GeneralRe: Resize all items? Pin
je_gonzalez18-Feb-04 3:20
je_gonzalez18-Feb-04 3:20 
AnswerRe: Resize all items? Pin
je_gonzalez17-Feb-04 17:21
je_gonzalez17-Feb-04 17:21 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.