Za kreiranje toolbar-a u windows formama koristićemo ToolStrip klasu. Ova kontrola se prvi put pojavila u .NET framework-u 2.0. Prevlačenjem ToolStrip kontrole na formu u dizajneru, kreira se toolbar na koji možemo dodati ToolStripButton, ToolStripSeparator, ToolStripLabel, ToolStripDropDownButton, ToolStripSplitButton, ToolStripTextBox, ToolStripComboBox i ToolStripProgressBar. Svojstvo Dock možemo odrediti uz koju ivicu prozora će biti smešten toolbar. Podrazumevano je Top. Dodavanje kontrola na ToolStrip može se vršiti iz dizajnera ili iz koda korišćenjem svojstva Items. Kontrole se mogu dodavati i klikom na toolstrip pa zatim izborom odgovarajuće kontrole iz padajućeg dugmeta.
Za spajanje dve ToolStrip kontrole koristi se klasa ToolStripManager i njena static metoda Merge.
ToolStripManager.Merge(toolStrip1, toolStrip2);
Ova klasa se koristi za kreiranje dugmeta na ToolStrip kontroli. Svojstvom Text određujemo tekst koji će korisnik videti na dugmetu, a svojstvom TextAlign poravnanje teksta u dugmetu. TextDirection svojstvo određuje poziciju teksta u dugmetu. Pored teksta dugme može da sadrži i sliku. Sliku postavljamo preko svojstva Image. Pomoću svojstva DisplayStyle možemo odrediti da li će se u dugmetu videti samo slika, slika i tekst ili samo tekst. Svojstvo TextImageRelation koristimo da odredimo poziciju slike u odnosu na tekst. Svojstvo ToolTipText koristimo za prikaz tooltip-a koji će korisnik videti kada se mišem pozicionira na dugme. Dugme kao i sve ostale kontrole možemo dodati i iz koda.
private void Form1_Load(object sender, EventArgs e)
{
KreirajToolStripDugme();
}private void KreirajToolStripDugme()
{
ToolStripButton dugmeNovi = new ToolStripButton("Novi");
dugmeNovi.Click += new EventHandler(dugmeNovi_Click);
toolStrip.Items.Add(dugmeNovi);
}void dugmeNovi_Click(object sender, EventArgs e)
{
MessageBox.Show("Kliknuli ste na dugme novi.");
}
Najčešće korišćen događaj ove kontrole je Click.
Klasa ToolStripLabel se koristi za prikaz teksta i slike u toolstrip kontroli. Ova kontrola ima ista svojstva kao i ToolStripButton za postavljanje teksta i slike Text, TextAlign, TextDirection, Image, DisplayStyle, TextImageRelation. ToolStripLabel kontrola se može ponašati i kao Linklabel kontrola ako se svosjtvo IsLink postavi na true. Tu su još i svojstva LinkColor, LinkVisited i LinkBehavior.
ToolStripDropDownButton kontrola izgleda kao i ToolStripButton s tom razlikom što kada se klikne na ovo dugme ili njegovu strelicu, prikazuje se padajući meni. U padajući meni može se smestiti ToolStripMenuItem, ToolStripComboBox, ToolStripSeparator i ToolStripTextBox. Ova kontrola ima ista svojstva za postavljanje teksta i slike kao ToolStripButton. Pored ovih svojstava ona ima i svojstvo ShowDropDownArrow čime se određuje da li će se videti strelica pored dugmeta. Stavke dropdown dugmeta se dodaju pomoću svojstva DropDownItems.
Ova kontrola se koristi za vizuelno razdvajanje kontrola na toolbar-u u odgovarajuće grupe kako bi se korisniku olakšalo pronalaženje potrebnih opcija.
ToolStripComboBox je ComboBox kontrola koja je optimizovana za korišćenje u ToolStrip-u. U kodu se preko svojstva ComboBox može doći do pripadajuće ComboBox kontrole i po potrebi koristiti njeni propertiji i metode. Ova kontrola ima svojstva i metode koje ima i ComboBox kontrola.
SelectedIndex svojstvo vraća indeks selektovane stavke toolstrip kombo boksa:
int selectedIndex = toolStripComboBox1.SelectedIndex;
SelectedItem vraća selektovanu stavku toolstrip kombo boksa koja je tipa object:
object selectedItem = toolStripComboBox1.SelectedItem;
Dodavanje stavki u toolstrip kombo boks:
toolStripComboBox1.Items.Add("stavka1");
ili
toolStripComboBox1.Items.AddRange(new object[]
{ "stavka1", "stavka2", "stavka3" });
Najčešće korišćeni događaj ove kontrole je SelectedIndexChanged.
Kao što je slučaj sa klasom ToolStripComboBox tako i ova klasa predstavlja optimizovanu TextBox kontrolu tako da se može koristiti u toolstrip-u. Analogno tome ToolStripTextBox klasa ima svojstvo TextBox preko kojeg možemo doći do pripadajuće TextBox kontrole. Preko ovog svojstva omogućeno nam je da koristimo propertije i metode koje poseduje TextBox kontrola. Npr. možemo postaviti svojstvo Multiline na true čime ćemo omogućiti unos više redova teksta u ToolStripTextBox kontrolu, pošto klasa ToolStripTextBox nema svojstvo Multiline.
toolStripTextBox1.TextBox.Multiline = true;