⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 toolbaritemcollection.cs

📁 Freetextbox是优秀的在线编辑器
💻 CS
字号:
namespace FreeTextBoxControls.Support
{
    using FreeTextBoxControls;
    using System;
    using System.Collections;
    using System.ComponentModel;
    using System.Reflection;
    using System.Web;
    using System.Web.UI;

    public class ToolbarItemCollection : ICollection, IEnumerable, IStateManager
    {
        internal ToolbarItemCollection()
        {
            this.toolbarItems = new ArrayList();
        }

        public int Add(ToolbarItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            return this.toolbarItems.Add(item);
        }

        public void Clear()
        {
            this.toolbarItems.Clear();
        }

        public bool Contains(ToolbarItem item)
        {
            if (item == null)
            {
                return false;
            }
            return this.toolbarItems.Contains(item);
        }

        public void CopyTo(Array array, int index)
        {
            this.toolbarItems.CopyTo(array, index);
        }

        public IEnumerator GetEnumerator()
        {
            return this.toolbarItems.GetEnumerator();
        }

        public int IndexOf(ToolbarItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            return this.toolbarItems.IndexOf(item);
        }

        public void Insert(int index, ToolbarItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            this.toolbarItems.Insert(index, item);
        }

        public void Remove(ToolbarItem item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }
            this.toolbarItems.Remove(item);
        }

        public void RemoveAt(int index)
        {
            this.toolbarItems.RemoveAt(index);
        }

        void IStateManager.LoadViewState(object savedState)
        {
            HttpContext.Current.Trace.Write("ToolbarItem Collection", "Loading ViewState");
            if ((savedState != null) && (savedState is Pair))
            {
                this.saveAll = true;
                Pair pair1 = (Pair) savedState;
                ArrayList list1 = (ArrayList) pair1.First;
                ArrayList list2 = (ArrayList) pair1.Second;
                int num1 = list1.Count;
                this.toolbarItems = new ArrayList(num1);
                for (int num2 = 0; num2 < num1; num2++)
                {
                    ToolbarItem item1 = null;
                    char ch1 = (char) list1[num2];
                    if (ch1.Equals('b'))
                    {
                        item1 = new ToolbarButton();
                    }
                    else
                    {
                        ch1 = (char) list1[num2];
                        if (ch1.Equals('d'))
                        {
                            item1 = new ToolbarDropDownList();
                        }
                        else
                        {
                            ch1 = (char) list1[num2];
                            if (ch1.Equals('s'))
                            {
                                item1 = new ToolbarSeparator();
                            }
                        }
                    }
                    this.Add(item1);
                    ((IStateManager) item1).LoadViewState(list2[num2]);
                }
            }
        }

        object IStateManager.SaveViewState()
        {
            HttpContext.Current.Trace.Write("ToolbarItem Collection", "Saving ViewState");
            bool flag1 = true;
            ArrayList list1 = new ArrayList(this.Count);
            ArrayList list2 = new ArrayList(this.Count);
            for (int num1 = 0; num1 < this.Count; num1++)
            {
                ToolbarItem item1 = (ToolbarItem) this.toolbarItems[num1];
                item1.SetDirty();
                if (item1 is ToolbarButton)
                {
                    list1.Add('b');
                }
                else if (item1 is ToolbarDropDownList)
                {
                    list1.Add('d');
                }
                else
                {
                    list1.Add('s');
                }
                object obj1 = ((IStateManager) item1).SaveViewState();
                list2.Add(obj1);
                if (obj1 != null)
                {
                    flag1 = false;
                }
            }
            if (flag1)
            {
                return null;
            }
            return new Pair(list1, list2);
        }

        void IStateManager.TrackViewState()
        {
            this.isTrackingViewState = true;
            foreach (ToolbarItem item1 in this.toolbarItems)
            {
                ((IStateManager) item1).TrackViewState();
            }
        }


        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
        public int Count
        {
            get
            {
                return this.toolbarItems.Count;
            }
        }

        [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), Browsable(false)]
        public bool IsSynchronized
        {
            get
            {
                return false;
            }
        }

        public ToolbarItem this[int index]
        {
            get
            {
                return (ToolbarItem) this.toolbarItems[index];
            }
        }

        [Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
        public object SyncRoot
        {
            get
            {
                return this;
            }
        }

        bool IStateManager.IsTrackingViewState
        {
            get
            {
                return this.isTrackingViewState;
            }
        }


        private bool isTrackingViewState;
        private bool saveAll;
        private ArrayList toolbarItems;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -