80 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			80 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System;
 | |
| 
 | |
| namespace DevComponents.DotNetBar
 | |
| {
 | |
| 	/// <summary>
 | |
| 	/// Represents collection of tab panels.
 | |
| 	/// </summary>
 | |
| 	public class TabPanelsCollection:System.Collections.CollectionBase
 | |
| 	{
 | |
| 		private TabControl m_Owner;
 | |
| 		public TabPanelsCollection(TabControl owner)
 | |
| 		{
 | |
| 			m_Owner=owner;
 | |
| 		}
 | |
| 		public int Add(TabPanel item)
 | |
| 		{
 | |
| 			m_Owner.NeedRecalcSize=true;
 | |
| 			return List.Add(item);
 | |
| 		}
 | |
| 		public TabPanel this[int index]
 | |
| 		{
 | |
| 			get {return (TabPanel)(List[index]);}
 | |
| 			set {List[index] = value;}
 | |
| 		}
 | |
| 		public void Insert(int index, TabPanel value) 
 | |
| 		{
 | |
| 			value.Visible=true;
 | |
| 			m_Owner.NeedRecalcSize=true;
 | |
| 			List.Insert(index, value);
 | |
| 		}
 | |
| 
 | |
| 		public int IndexOf(TabPanel value) 
 | |
| 		{
 | |
| 			return List.IndexOf(value);
 | |
| 		}
 | |
| 
 | |
| 		public bool Contains(TabPanel value) 
 | |
| 		{
 | |
| 			return List.Contains(value);
 | |
| 		}
 | |
| 
 | |
| 		public void Remove(TabPanel value) 
 | |
| 		{
 | |
| 			List.Remove(value);
 | |
| 		}
 | |
| 		protected override void OnRemoveComplete(int index,object value)
 | |
| 		{
 | |
| 			base.OnRemoveComplete(index,value);
 | |
| 			TabPanel item=value as TabPanel;
 | |
| 			item.Visible=true;
 | |
| 			if(m_Owner.SelectedTab==item)
 | |
| 				m_Owner.SelectedTab=null;
 | |
| 
 | |
| 			m_Owner.NeedRecalcSize=true;
 | |
| 			if(m_Owner._DesignMode)
 | |
| 				m_Owner.Refresh();
 | |
| 		}
 | |
| 		protected override void OnInsertComplete(int index,object value)
 | |
| 		{
 | |
| 			base.OnInsertComplete(index,value);
 | |
| 			TabPanel item=value as TabPanel;
 | |
| 			item.Visible=true;
 | |
| 			m_Owner.OnTabAdded(item);
 | |
| 			m_Owner.NeedRecalcSize=true;
 | |
| 			if(m_Owner._DesignMode)
 | |
| 				m_Owner.Refresh();
 | |
| 		}
 | |
| 
 | |
| 		public void CopyTo(TabPanel[] array, int index) 
 | |
| 		{
 | |
| 			List.CopyTo(array, index);
 | |
| 		}
 | |
| 		protected override void OnClear()
 | |
| 		{
 | |
| 			m_Owner.OnTabsCleared();
 | |
| 			base.OnClear();
 | |
| 		}
 | |
| 	}
 | |
| }
 |