c# Proje yazıyorum. formda menüstript kullanıyorm. Yetki türü a ise tüm menü stripti gözükcek b ise menüdeki bazı yerler gözükcek. Bu işi nasıl yapa bilirim?
Yetki uygulaması
Cevaplar
Eğer Gizleme istiyorsan;
menuStrip1.Items[1].Visible = false;
aktifliğini kapatmak istiyorsan
menuStrip1.Items[1].Enabled = false;
menuStrip1.Items[1].Visible = false;
aktifliğini kapatmak istiyorsan
menuStrip1.Items[1].Enabled = false;
Teşekkür ediyorum biraz karıştırıp buldum çözümünü :)
acaba nasıl bulduğunuzu yada nasıl bir kod yapısı kullandığınızı paylaşabilir misiniz?
_dt = acces.listele("Select * from k_girisi Where k_adi='" + textBox1.Text + "' and k_par ='" + textBox2.Text + "'");
_yetki = _dt.Rows[0]["yetki"].ToString();
if (_dt.Rows.Count > 0)
{
Form2 yni = new Form2(_yetki);
yni.Show();
this.Visible = false;
}
Accesde kontrol ediyor kullanıcı yetkisini
Form2'ye switch case uyguladım
Form1 form1 = new Form1();
public Form2(string yetki)
{
switch (yetki)
{
case "TAM YETKİ": urunkayıt.Visible = true;
uruntakip.Visible = true;
işEmirleri.Visible = true;
çıkış.Visible = true;
kullanıcıBilgileri.Visible = true;
ürünÇıkışBilgileri.Visible = true;
break:
}
Bu şekilde yaptım
_yetki = _dt.Rows[0]["yetki"].ToString();
if (_dt.Rows.Count > 0)
{
Form2 yni = new Form2(_yetki);
yni.Show();
this.Visible = false;
}
Accesde kontrol ediyor kullanıcı yetkisini
Form2'ye switch case uyguladım
Form1 form1 = new Form1();
public Form2(string yetki)
{
switch (yetki)
{
case "TAM YETKİ": urunkayıt.Visible = true;
uruntakip.Visible = true;
işEmirleri.Visible = true;
çıkış.Visible = true;
kullanıcıBilgileri.Visible = true;
ürünÇıkışBilgileri.Visible = true;
break:
}
Bu şekilde yaptım
Size tavsiyem, projelerinizde switch case kullanmayın. if else yapısını öneririm size. Çünkü if else daha temiz ve en önemlisi daha HIZLI kod yazmanızı sağlar. Günümüzde hızın önemini hak verirsiniz ki anlatmaya gerek yok. İyi çalışmalar diliyorum.
Else İf işimi daha çok zora sokardı bence :) Bu yolu tercih ettim bende