Meilleur auteur de réponses
gestion des privillèges sur le menu

Question
-
Réponses
-
ce problème a trouvé une solution.
En fait, j'ai crée une table dans ma base de données SqlServer 2008 où chaque menu ou sous-menu a une valeur booléenne,ensuite je crée un dataset avec SqlDataAdapter que je charge .Lorsqu'un utilisateur de mon application se log à travers un loginForm,l'état des menus et des sous-menus reflète leurs états dans la table de la bd.
exemple
Dim
f As LoginFrmSICESD = CType(Me.Owner, LoginFrmSICESD)
With SqlDataAdapter1
"@Matricule").Value = f.UsernameTextBox.Text
Dim query1 = _
From Identification In DataSetPrivilEnable11.Identification.AsEnumerable _
Where Identification.Matricule = f.UsernameTextBox.Text _
Select Identification
For Each p In query1
If p.Fichier.ToString = False Then
Me.FileMenu.Enabled = False
End If
If p.Quitter.ToString = False Then
Me.ExitToolStripMenuItem.Enabled = False
End If
If p.Pers.ToString = False Then
Me.EditMenu.Enabled = False
End If
If p.EnregPers.ToString = False Then
Me.UndoToolStripMenuItem.Enabled = False
End If
Toutes les réponses
-
-
Bonjour,
Moi je créerai une classe avec des membres nom, menu comme ceci:
Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim sebastien As New personne() With {.Nom = "Durand", .AccessMenu1 = False, .AccessMenu2 = True} Dim gregory As New personne() With {.Nom = "Dupont", .AccessMenu2 = False, .AccessMenu1 = True} Dim PersonnesWithAccessToMenu1 As New List(Of personne) From {sebastien} Dim PersonnesWithAccessToMenu2 As New List(Of personne) From {gregory} If sebastien.AccessMenu1 Then SaveToolStripMenuItem.Visible = True Else SaveToolStripMenuItem.Visible = False End If End Sub Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click 'code End Sub End Class Public Class personne Property Nom As String Property AccessMenu1 As Boolean Property AccessMenu2 As Boolean Property AccessMenu3 As Boolean End Class
fred- Proposé comme réponse jperigny lundi 28 février 2011 02:30
-
Bonjour et merci pour la réponse.
Je garde l'idée, et je continue mes tests. Pour l'instant, j'essaye l'idée suivante :
- Récupération des items de menus et sous-menus
- Mise en place de ces items dans un treeview avec case à cocher
- Choix des items par utilisateur
- et sauvegarde dans un fichier (peut-être xml)
pour l'instant je continue mes recherches et test, mais je garde votre idée, merci beaucoup.
Cordialement
Jean PERIGNY, Développeur jperigny@hotmail.fr -
ce problème a trouvé une solution.
En fait, j'ai crée une table dans ma base de données SqlServer 2008 où chaque menu ou sous-menu a une valeur booléenne,ensuite je crée un dataset avec SqlDataAdapter que je charge .Lorsqu'un utilisateur de mon application se log à travers un loginForm,l'état des menus et des sous-menus reflète leurs états dans la table de la bd.
exemple
Dim
f As LoginFrmSICESD = CType(Me.Owner, LoginFrmSICESD)
With SqlDataAdapter1
"@Matricule").Value = f.UsernameTextBox.Text
Dim query1 = _
From Identification In DataSetPrivilEnable11.Identification.AsEnumerable _
Where Identification.Matricule = f.UsernameTextBox.Text _
Select Identification
For Each p In query1
If p.Fichier.ToString = False Then
Me.FileMenu.Enabled = False
End If
If p.Quitter.ToString = False Then
Me.ExitToolStripMenuItem.Enabled = False
End If
If p.Pers.ToString = False Then
Me.EditMenu.Enabled = False
End If
If p.EnregPers.ToString = False Then
Me.UndoToolStripMenuItem.Enabled = False
End If
-