コード例 #1
0
        public void InitializeComponent()
        {
            SuspendLayout();

            var resource = new ComponentResourceManager(typeof(BaseForm));

            var Item_Min = new ToolStripMenuItem()
            {
                Alignment = ToolStripItemAlignment.Right,
                Image     = (Image)resource.GetObject("Min")
            };

            var Item_Max = new ToolStripMenuItem()
            {
                Alignment = ToolStripItemAlignment.Right,
                Image     = (Image)resource.GetObject("Max")
            };

            var Item_Close = new ToolStripMenuItem()
            {
                Alignment = ToolStripItemAlignment.Right,
                Image     = (Image)resource.GetObject("Close")
            };

            Item_Title = new ToolStripMenuItem()
            {
                Alignment = ToolStripItemAlignment.Left,
            };

            TitleBar = new MenuStrip();
            TitleBar.Items.AddRange(new ToolStripItem[] { Item_Close, Item_Max, Item_Min, Item_Title });

            Item_Min.Click += (sender, e) => WindowState = FormWindowState.Minimized;
            Item_Max.Click += (sender, e) =>
            {
                WindowState    = WindowState == FormWindowState.Maximized ? FormWindowState.Normal : FormWindowState.Maximized;
                Item_Max.Image = (Image)(WindowState == FormWindowState.Maximized ? resource.GetObject("Normal") : resource.GetObject("Max"));
            };
            Item_Close.Click     += (sender, e) => Close();
            TitleBar.MouseDown   += (sender, e) => FormManager.ConvertMessageMove(e, Handle);
            TitleBar.DoubleClick += (sender, e) => Item_Max.PerformClick();
            Load += (sender, e) =>
            {
                Controls.Add(TitleBar);
                TitleBar.SendToBack();
            };

            ResumeLayout();
        }