تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] التحكم في صلاحيات المستخدمين Devexpress Ribbon Control
#4
أخي الكريم محمد العامر
لست أدري طبيعة الكد لديك و محتوياته
بالنسبة لي .. أنا أستعمل بزر تسجيل الدخول هذا الكود .. حاول الاستنباط منه .. و حذف ما لا يليق بك
كود :
   Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
       Try
           If Me.ComboBox1.Text = "" Then
               ErrorProvider1.SetError(Me.ComboBox1, "الرّجاء كتابة اسم المستخدم")
               MsgBox("الرّجاء كتابة اسم المستخدم", vbCritical + vbMsgBoxRight + vbMsgBoxRtlReading, "خطأ غير متوقّع")
               Me.ComboBox1.Focus()
               Exit Sub
           End If
           If Me.TextBox2.Text = "" Then
               ErrorProvider1.SetError(Me.TextBox2, "الرّجاء كتابة كلمة المرور")
               MsgBox("الرّجاء كتابة كلمة المرور", vbCritical + vbMsgBoxRight + vbMsgBoxRtlReading, "خطأ غير متوقّع")
               Me.TextBox2.Focus()
               Exit Sub
           End If

           Dim Dr1 As OleDbDataReader
           Dim Cmd1 As New OleDbCommand("SELECT [USERS_Name],[USERS_Password] From TBL_USERS Where USERS_Name = '" & Me.ComboBox1.Text & "'")
           Cmd1.Connection = Conne_2020
           If Conne_2020.State = ConnectionState.Closed Then Conne_2020.Open()
           Dr1 = Cmd1.ExecuteReader
           If Dr1.Read Then
               If UCase(Dr1(1)) = UCase(TextBox2.Text) Then
                   Dim Sql = "SELECT * From TBL_USERS WHERE USERS_Name='" & ComboBox1.Text & "'"

                   Dr1.Close()
                   Dr1.Dispose()

                   Dim Adp = New OleDb.OleDbDataAdapter(Sql, Conne_2020)
                   Dim Ds = New DataSet
                   Adp.Fill(Ds)

                   Dim Dt = Ds.Tables(0)
                   If Dt.Rows.Count > 0 Then

                       Dim Dr2 As DataRow
                       Dr2 = Dt.Rows(0)

                       MDIParent1.BarButtonItem1.Enabled = Dr2!USERS_Formula1
                       MDIParent1.BarButtonItem2.Enabled = Dr2!USERS_Formula2
                       MDIParent1.BarButtonItem3.Enabled = Dr2!USERS_Formula3
                       MDIParent1.BarButtonItem4.Enabled = Dr2!USERS_Formula4
                       MDIParent1.BarButtonItem5.Enabled = Dr2!USERS_Formula5
                       MDIParent1.BarButtonItem6.Enabled = Dr2!USERS_Formula6
                       MDIParent1.BarButtonItem7.Enabled = Dr2!USERS_Formula7
                       MDIParent1.BarButtonItem8.Enabled = Dr2!USERS_Formula8
                       MDIParent1.BarButtonItem9.Enabled = Dr2!USERS_Formula9
                       MDIParent1.BarButtonItem10.Enabled = Dr2!USERS_Formula10
                       MDIParent1.BarButtonItem11.Enabled = Dr2!USERS_Formula11
                       MDIParent1.BarButtonItem12.Enabled = Dr2!USERS_Formula12

                       Name_Users = Dr2!USERS_FullName

                       Password_Users = TextBox2.Text
                       XtraMessageBox.Show("                         سندس لتسيير الإمتحانات الرسميّة .. ترحّب بكم" & ChrW(13) & ChrW(10) & ChrW(13) & ChrW(10) & "  تمّ تسجيل الدخول إلى البرنامج على السّاعة : " & (DateAndTime.Now.ToString))

                       MDIParent1.Show()
                       MDIParent1.Enabled = True
                       MDIParent1.BarStaticItem3.Caption = Name_Users

                       Me.Dispose()
                       Me.Close()

                   End If
               Else
                   Error_Show_Library_Management_First()
                   Me.TextBox2.Focus()
               End If
           Else
               Error_Show_Library_Management_Second()
               Me.ComboBox1.Focus()
               Exit Sub
           End If
           Dr1.Close()
           Conne_2020.Close()
       Catch ex As Exception
           XtraMessageBox.Show(ex.Message)
       End Try

   End Sub

ما يمكن فعله هو تعطيل ال BarButtonItem
المذكورة حسب الاسم بالكود و المشار إليها بالأسهم الحمراء كمثال ..


طيّب .. سيكون عددها كبير .. و بالتالي سيكون عدد الحقول من Yes - No

عن نفسي .. لم أجد حل آخر

من المفروض يتم تعطيل ال RibbonPage المشار إليها بالصورة أدناه

لكن لم أتوصّل إلى حل لهذه الإشكالية .. عن نفسي أتحدث
عند إستبدال ال  BarButtonItem ب RibbonPage هكذا .. سينتج خطأ ..


كود :
MDIParent1.RibbonPage1.Enabled = Dreader!USERS_Formula

يمكنك .. إخفاء ال RibbonPage تماما بهذا الشكل و بدون أي أخطاء
كود :
MDIParent1.RibbonPage1.Visible = Dreader!USERS_Formula1

أمّا تعطيل ال RibbonPage و ليس إخفاؤه
بحثت كثيرا و لم أتوصّل للحل يا غالي
تحياتي
قناتنا على اليوتوب
الرد }}}


الردود في هذا الموضوع
RE: التحكم في صلاحيات المستخدمين Devexpress Ribbon Control - بواسطة عبد العزيز البسكري - 17-07-20, 12:43 AM


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم