c# – MenuStript kullanımı (Kod ile yönetmek)

1 Nis

Merhaba arkadaşlar,
Bugün sizlere MenuStript nedir, ne işe yarar ve kod ile MenuStript nasıl oluşturulur anlatmaya çalışacağım.

MenuStript nedir ?

Hemen hemen her programda gördüğümüz genelde üst tarafta yer alan menü(Dosya,Düze,Biçim) yapılarıdır.
Örneğin Notepadi açtığımızda üst tarafta gördüğümüz menü(Dosya,Düzen,Biçim,Görünüm, Yazdır) bir MenuStript’tir.
Sanırım birden fazla butonun yer aldığı gruplama gibi düşünebiliriz.
Screenshot_1

MenuStript ne işe yarar ?

Bu menü yapılarını kullanarak, programımız üzerinde basit işlevleri kontrol edebiliriz. Her sayfada yapmak istedeğimiz işlemleri Menulerde kullanarak fazladan kod tekrarlarından kurtulabilir ve en önemlisi kullanıcılar için kolaylıklar sağlamış oluruz.

Kullanıcının bu menüler yardımıyla bazı basit işlemlerini (dosya kaydetmek, yeni dosya açmak vs) hızlıca yapmasını sağlayabiliriz.

MenuStript kullanımı

Bunun 2 yolu vardır;

1- Toolboxtan forma sürükle bırak yöntemi ile eklenerek kullabilinmesi.
2- Kod ile menuStript oluşturarak kullanabilmesi ve Click Event yönetilmesi

Benim bu yazıyı yazmamda ki amaç olan 2.seçeneğin önemi şudur:
Eğer ki projemizde birden fazla form var ise ve her formda ki Menuler aynı olacaksa, her form için ToolBox’tan menuStript ekleyip, tek tek menuleri biçimlendirmek gerekicekti ve çok fazla tekrarlayan kod olacaktı.
İşte tam olarak bunun önüne geçmek için, bir class yapıp default olarak menuStrip’timizi ayarlayıp sadece kullanmak istediğimiz formlarda kodu çağırarak yönetmemiz daha doğru olacaktır.

1- Toolboxtan forma sürükle bırak yöntemi ile eklenerek kullabilinmesi.

MenuStript2

2- Kod ile menuStript oluşturarak kullanabilmesi ve Click Event yönetilmesi

Aşağıda ki kodlar ile menuStrip oluşturarak istediğimiz formlarda çağırıp kullanabilirsiniz.
Kullanmak istediğiniz formu MainMenu(Form _form) methoduna parametre olarak göndermeniz yeterlidir.

        //semihcelikol.com MenuStript kullanımı kod örneği;
        /// <summary>
        /// Default MenuStrip opitons.
        /// </summary>
        /// <param name="_form"></param>
        /// <returns>return MenuStrip</returns>
        public void MainMenu(Form _form)
        {
            MenuStrip m = new MenuStrip();
            ToolStripMenuItem fileItem= new ToolStripMenuItem("File");
            ToolStripMenuItem fileSubItem = new ToolStripMenuItem("Sign out");
            ToolStripMenuItem aboutItem= new ToolStripMenuItem("About");

            //ToolStripMenuItem options
            fileItem.DropDownItems.Add(fileSubItem);
            
            //MenuStript options
            m.Name = "MenuMain";
            m.Dock = DockStyle.Top;
            m.Items.Add(fileItem);
            m.Items.Add(aboutItem);
            
            //form controls add
            _form.Controls.Add(m);

            //Click menu control
            fileSubItem.Click += FileSubItem_Click;
            aboutItem.Click += AboutItem_Click;
        }

        //Sign out click control event
        private void FileSubItem_Click(object sender, EventArgs e)
        {
            this.exit();
        }
        //About click control event
        private void AboutItem_Click(object sender, EventArgs e)
        {
            this.about();
        }

Ekran görüntüsü ;

MenuStript1

Bir Cevap Yazın