09-09-20, 11:23 PM
(آخر تعديل لهذه المشاركة : 10-09-20, 04:02 PM {2} بواسطة عبد العزيز البسكري.)
السّلام عليكم و رحمة الله و بركاته
إخواني الأفاضل .. لو كان بالإمكان المساعدة لحل هذه الإشكاليّة
الموضوع كالتالي ..
أقوم بحفظ اسم Skin معين من سكاينات الديف إكسبرس في الريجيستري
و يبقى هذا السكاين الذي إخترته شغّال حتى بعد غلق المشروع
أقوم باختيار السكاين من أوّل فورم يتم إظهاره للمستخدم
يتم حفظ اسم السكاين بالريجيستري
عند التشغيل مرة قادمة .. يتم إستدعاء قيمة الريجيستري بالفورم لود
كود :
Public Sub Add_Last_Theme_Bonus_Skins_From_Registry()
'Save Bonus Skins Selected in Registry
Dim SkinName As Microsoft.Win32.RegistryKey
SkinName = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows", True)
SkinName.SetValue("SkinName", DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName.ToString())
SkinName.Close()
End Sub
Public Sub Get_Last_Theme_Bonus_Skins_From_Registry()
'Get Bonus Skins Selected in Registry
Dim SkinName As Microsoft.Win32.RegistryKey
SkinName = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows", True)
If SkinName IsNot Nothing Then
DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = SkinName.GetValue("SkinName").ToString()
End If
End Subإلى هنا .. كل شيء تمام ..
المشكلة ..
عند التشغيل أوّل مرّة .. عند فرمتة الجهاز .. أو عند التشغيل على جهاز العميل
قيمة الريجيستري ستكون طبعا فارغة و بالتالي ..
أردت عمل ما يأتي
عند أوّل مرة إذا كانت قيمة الريجيستري فارغة .. الفورم سيأخذ اسم السكاين مثلا ..
Caramel
و إذا لم تكن قيمة الريجيستري فارغة .. تأخذ اسم السكاين الذي تم إختياره و تم حفظها بالريجيستري
حاولت بهذا المفهوم .. لكنها ما ضبطت معي ..
كود :
Dim SkinName As Microsoft.Win32.RegistryKey
SkinName = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SkinName")
If SkinName IsNot Nothing Then
DevExpress.Skins.SkinManager.EnableFormSkins()
DevExpress.UserSkins.BonusSkins.Register()
DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = "Caramel"
Else
SkinName = Microsoft.Win32.Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows", True)
If SkinName IsNot Nothing Then
DevExpress.LookAndFeel.UserLookAndFeel.Default.SkinName = SkinName.GetValue("SkinName").ToString()
End If
End Ifبارك الله فيكم و لكم مقدما و جزاكم خير الجزاء
تحياتي واحتراماتي
قناتنا على اليوتوب
