Forum

c# Detaylı Kullanıc...
 
Bildirimler
Hepsini Temizle

[Çözüldü] c# Detaylı Kullanıcı Yetkilendirme

6 Yazılar
2 Üyeler
0 Likes
299 Görüntüleme
(@mustafanisanci)
Gönderiler: 79
Estimable Member
Konu başlatıcı
 

Arkadaşlar C# windowsform projemde sona yaklaştım. Ancak detaylı bir yetkilendirme işlemini nasıl yapacağım konusunda biraz karmaşa yaşıyorum. Projemde 10 kadar form 20 kadar usercontrol bulunmakta ve usercontrolleri tabpage içinde açmaktayım. Ben hem menü anlamında hemde menülerin içindeki her bir buton için ayrı yetkilendirme tasarlamak istiyorum. yetki ataması yaparken bu usercontroller içindeki menüleri nasıl listeleyip bunların görünüp görünmemesi üzerine bir kurgu yapabilirim. elinde örnek bir çalışması olan veya tavsiyesi olan arkadaşlarım paylaşırsa çok yardımcı olur.

 
Gönderildi : 26/01/2024 08:04

(@ugurduzla)
Gönderiler: 10
Active Member
 

Bunlar için hazır NuGet'lar var kullanabilirsiniz ama ilk başlarda hakim olmak zor olabilir diye düşünüyorum. Başlangıç seviyesinde düşündüğünüz kriterler bazında yani "tab page" ve "user control" bazından birbirine bağlı olacak şekilde ana tablo da "role" olacak şekilde içine kullanıcı eklenerek veritabanınıza ekleme yapıp açılış esnasında ya da tıklama anında ilgili kullanıcı adından bu tabloya sorgu atıp yetki kontrolü yapabilirsiniz. İlgili sayfa ve kontrolleri de isim bazından ekleme yapabilirsiniz ya da CRUD button işlevleri olarak daha kısa bir şekilde de "base" olarak da kontrol yaptırabilirsiniz.

 
Gönderildi : 26/01/2024 09:29

(@mustafanisanci)
Gönderiler: 79
Estimable Member
Konu başlatıcı
 

Uğur bey cevabınız için teşekkür ederim. Ana formumda bulanan tabpage içinde usercontrolleri göstererek işlemlerime devam ediyorum. her toolstripmenu için bir id ve her menu items için ayrı bir id tanımladım. bütün bunları veri tabanında bir tablo saklayarak buradan yetkilendirme işlemi yürüteceğim. ancak şuanda ana sorunsalım şu bu yetkilendirme için bir class oluşturdum ancak tabpage içinde açtağım usercontrollerin denetimlerine hiçbir şekilde erişemiyorum!! bununla ilgili bir kaynakta bulamadım. farklı bir formdan veya bir class içinden hedeflenen usercontrolün button veya textlerine nasıl erişebilirim.

 
Gönderildi : 29/01/2024 11:06

(@ugurduzla)
Gönderiler: 10
Active Member
 

Merhaba, sorunuzu yanlış anlamadıysam ve klasik bir mimaride proje geliştirdiğinizi düşünecek olursam ulaşmak istediğiniz controller'a "Modifiers" özelliklerini proje yapınıza göre "public" ya da "protected internal" yaparak FormClassName.ControlName mantığında erişim sağlayabilirsiniz, yani Form1.txtAd  şeklinde.

Bu ileti 3 ay önce Uğur DUZLA tarafından düzenlendi
 
Gönderildi : 29/01/2024 21:34

(@mustafanisanci)
Gönderiler: 79
Estimable Member
Konu başlatıcı
 

Aynen klasik mimari de büyük olmayan bir projem var. Tabpage içinde birden fazla User Controller leri sayfa sayfa açtığım için önce o tabpage e odaklanmak mı gerekiyor? Açık olan User Control hangisi bile bilmem için? 

 
Gönderildi : 29/01/2024 22:38

(@mustafanisanci)
Gönderiler: 79
Estimable Member
Konu başlatıcı
 

Anaformum üzerinde bulunan menüden yine aynı form içindeki tabpage içinde gösteriyorum user controlleri. kod aşağıdaki gibi.

        private void MenuKBHesapDonemleri_Click(object sender, EventArgs e)
        {
            XtraTabPage yenisayfa = new XtraTabPage();
            yenisayfa.Name = "tabKBHesapDonemleri";
            yenisayfa.Text = "Hesap Tablosu";

            foreach (XtraTabPage item in TabControl1.TabPages)
            {
                if (item.Name == "tabKBHesapDonemleri")
                {
                    TabControl1.SelectedTabPage = item;
                    return;
                }
            }

            TabControl1.TabPages.Add(yenisayfa);
            int yenieklenensayfa = TabControl1.TabPages.IndexOf(yenisayfa);
           
            UserKBHesapDonemleri usercontrol = new UserKBHesapDonemleri();
            usercontrol.Name = "KBHesapDonemleri";
            yenisayfa.Controls.Add(usercontrol);
            usercontrol.BringToFront();
            usercontrol.Dock = DockStyle.Fill;

            TabControl1.SelectedTabPageIndex = yenieklenensayfa;
        }

 

Tab page oluşmadığı için usercontrolname'e erişemiyorum menüyü gizleyemiyorum. bunun yerine menü görünsün ama tıklama aşamasında yetki kontrolü yapayım dedim onda da butona tıklıyorum ama bir türlü usercontrol adına erişemedim. her iki şekilde de tabpage ortada olmadığı için erşim sağlayamadım. bu sorunu nasıl aşabilirim?

 

 
Gönderildi : 30/01/2024 09:51

Paylaş: