We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. Image for the cookie policy date

Locking a Tabbed MDI window

Is there a way to lock a Tabbed MDI Child window so that it cannot be moved? What I am looking for is the ability to always keep a certain window as the left most Tabbed Window, regardless of the postions of the other tabbed windows. Thanks, Jim

13 Replies

RP Ramesh Praveen Syncfusion Team January 13, 2003 01:32 PM UTC

Jim, I will make this a feature request for our next release. We will provide a mechanism where you could implement a certain interface in the corresponding MDI Child and control it's positioning in the tab, right there. Regards, Praveen Ramesh


JC James Cline March 13, 2003 04:48 PM UTC

I implemented the ITabbedMDIChildForm interface and set the AllowUserDrag to false. This does prevent the tab from being dragged from one group to another but it still allows the tab to be reordered in the same group. Is there a way to prevent it from being able to move at all? Thanks, Jim > Jim, > > I will make this a feature request for our next release. We will provide a mechanism where you could implement a certain interface in the corresponding MDI Child and control it's positioning in the tab, right there. > > Regards, > Praveen Ramesh >


JC James Cline March 13, 2003 04:48 PM UTC

I implemented the ITabbedMDIChildForm interface and set the AllowUserDrag to false. This does prevent the tab from being dragged from one group to another but it still allows the tab to be reordered in the same group. Is there a way to prevent it from being able to move at all? Thanks, Jim > Jim, > > I will make this a feature request for our next release. We will provide a mechanism where you could implement a certain interface in the corresponding MDI Child and control it's positioning in the tab, right there. > > Regards, > Praveen Ramesh >


JC James Cline March 13, 2003 05:56 PM UTC

Also, I've found a bug with the AllowUserDrag. If this is implemented on a form, you can still drag to a new group with the following steps: 1. create 3 tabbed documents. (one has to implement the ITabbedMDIChildForm interface with AllowUserDrag = false ) 2. Take one of the drag enabled MDI tabbed forms to a new horizontal group. 3. Now drag the MDI form that implements ITabbedMDIChildForm to a new positon in its own group and then back to its orignal spot and then down to the the second group without ever releasing the button. 4. MDI Tab is moved to the new group. -Jim


RP Ramesh Praveen Syncfusion Team March 13, 2003 06:25 PM UTC

Jim, 1) Regarding ablity to move the tabs within a group when AllowUserDrag is false, that was the intention. Whereas the AllowUserDrag is a setting specific to the tabpage, the ability to move the tabs within the tabpage is a property of the tab control used in the tab group. We use a TabControlExt in the tab groups and it's UserMoveTabs property is set to true by default. You can access and customize the tab control as noted in this KB: http://www.syncfusion.com/KB/Tools/Tools_c30c.asp#q531q 2) I am not able to reproduce the drag bug you mention here. What version are you using? Regards, Praveen Ramesh


JC James Cline March 14, 2003 10:33 AM UTC

1) Won't UserMoveTabs prevent all the tabs from being moved? I would like to be able to lock down just one tab, sort of like a Home page. So that it cannot be closed, moved, or rearranged in the tab control. I was looking for an event that would allow me to know when that tab page's postion was going to be changed then I could cancel the move. Is there anything like that in the TabControlEx? 2) I am using 1.5.1.6. I will try to duplicate on the sample app when I get a chance. > Jim, > > 1) Regarding ablity to move the tabs within a group when AllowUserDrag is false, that was the intention. Whereas the AllowUserDrag is a setting specific to the tabpage, the ability to move the tabs within the tabpage is a property of the tab control used in the tab group. > > We use a TabControlExt in the tab groups and it's UserMoveTabs property is set to true by default. You can access and customize the tab control as noted in this KB: > http://www.syncfusion.com/KB/Tools/Tools_c30c.asp#q531q > > 2) I am not able to reproduce the drag bug you mention here. What version are you using? > > Regards, > Praveen Ramesh >


RP Ramesh Praveen Syncfusion Team March 14, 2003 12:43 PM UTC

Jim, Though we can allow preventing moving a certain tab in our tab control, other tabs could be moved before/after it, which makes it moot to disable dragging a single tab. Regards, -Praveen


JC James Cline March 14, 2003 05:33 PM UTC

Could it be made to remove a tab from participating in the tab moving logic so that it is considered fixed? Or at least expose events like BeforeTabMove and provide a way to cancel the move. I don't know how it is implemented but it seems like there should be a place that an event could be fired that would allow the behavior to be modified. Even if I had to implement the code to prevent the move, I would as long as I had the events to attach to. Anything would help... Thanks.. > Jim, > > Though we can allow preventing moving a certain tab in our tab control, other tabs could be moved before/after it, which makes it moot to disable dragging a single tab. > > Regards, > -Praveen


RP Ramesh Praveen Syncfusion Team March 17, 2003 12:07 PM UTC

Jim, Yes, we could provide a BeforeTabMove event where you could cancel the move. We will try to include this in our next version. Regards, Praveen Ramehs


AD Administrator Syncfusion Team July 17, 2003 01:15 PM UTC

I have managed to keep a Summary TabPage as the left most tab while allowing the tabpages to be moved. In the SelectedIndexChanged of the TabControlExt control - I check if the TabPage at TabPages(0) is my Summary Tabpage - if not I remove the summary Tabpage and insert it at index 0. If Not Me.TabControlExt1.TabPages(0) Is TabPageSummary Then Me.TabControlExt1.TabPages.Remove(TabPageSummary) Me.TabControlExt1.TabPages.Insert(0, TabPageSummary) End If hope this helps! > Is there a way to lock a Tabbed MDI Child window so that it cannot be moved? What I am looking for is the ability to always keep a certain window as the left most Tabbed Window, regardless of the postions of the other tabbed windows. > > Thanks, > Jim >


RP Ramesh Praveen Syncfusion Team July 17, 2003 06:13 PM UTC

Thanks for the update. -Praveen


JC James Cline July 21, 2003 11:18 AM UTC

This looks like it would work great for me except the TabbedMDIManager doesn't expose the needed evetns and methods. I assume that it uses a tab control somewhere in the implementation of the TabbedMDI but I can't seem to be able to get to it... > I have managed to keep a Summary TabPage as the left most tab while allowing the tabpages to be moved. In the SelectedIndexChanged of the TabControlExt control - I check if the TabPage at TabPages(0) is my Summary Tabpage - if not I remove the summary Tabpage and insert it at index 0. > > If Not Me.TabControlExt1.TabPages(0) Is TabPageSummary Then > Me.TabControlExt1.TabPages.Remove(TabPageSummary) > Me.TabControlExt1.TabPages.Insert(0, TabPageSummary) > End If > > > hope this helps! > > > Is there a way to lock a Tabbed MDI Child window so that it cannot be moved? What I am looking for is the ability to always keep a certain window as the left most Tabbed Window, regardless of the postions of the other tabbed windows. > > > > Thanks, > > Jim > > >


RP Ramesh Praveen Syncfusion Team July 28, 2003 05:48 PM UTC

Jim, This might help: http://www.syncfusion.com/KB/Tools/Tools_c30c.asp#q531q -Praveen

Loader.
Live Chat Icon For mobile
Up arrow icon