السلام عليكم ورحمة الله وبركاته
لو سمحتم ممكن طريقة كتابة كود يقوم بتغير لون الحقول على سبيل المثال لكامل المشروع وليس الفورم فقط وكذلك حفظ اللون المختار في الريجستري ليظهر مجدداً عند تشغيل البرنامج
أرجو أن يكون كود إحترافي ومختصر
ولكم كل الشكر
هذا كود يحفظ بـ
Settingsالخاص بالبرنامج .
كود :
'حقول المطلوب وجودها في Settings و هي من نوع String
'DgvColor1
'DgvColor2
'DgvColor3
'DgvColor4
'DgvColor5
'DgvColor6
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
LoadDgvColore(DataGridView1)'كود تحميل ألوان الداتا غريد فيو
End Sub
Private Sub BtnSave_Click(sender As Object, e As EventArgs) Handles BtnSave.Click'حفظ ألوان حقول الجدول في Settings الخاص بالبرنامج
My.Settings.DgvColor1 = DgvTest.DefaultCellStyle.BackColor.R
My.Settings.DgvColor2 = DgvTest.DefaultCellStyle.BackColor.G
My.Settings.DgvColor3 = DgvTest.DefaultCellStyle.BackColor.B
My.Settings.DgvColor4 = DgvTest.AlternatingRowsDefaultCellStyle.BackColor.R
My.Settings.DgvColor5 = DgvTest.AlternatingRowsDefaultCellStyle.BackColor.G
My.Settings.DgvColor6 = DgvTest.AlternatingRowsDefaultCellStyle.BackColor.B
My.Settings.Save()
MsgBox("تمت عملية الحفظ بنجاح", MsgBoxStyle.Information + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.MsgBoxRight, "حفظ")
End Sub
Public Sub LoadDgvColore(DgvTabel As DataGridView)'ضع هذا في مديول لتستطيع إستعماله في أي فورم
DgvTabel.DefaultCellStyle.BackColor = Color.FromArgb(My.Settings.DgvColor1, My.Settings.DgvColor2, My.Settings.DgvColor3)
DgvTabel.AlternatingRowsDefaultCellStyle.BackColor = Color.FromArgb(My.Settings.DgvColor4, My.Settings.DgvColor5, My.Settings.DgvColor6)
End Sub
وهذا كود اختيار الألوان الخاصة بالجدول .
كود :
Private Sub BtnFirstColor_Click(sender As Object, e As EventArgs) Handles BtnFirstColor.Click
Dim ColorXT As New ColorDialog
If ColorXT.ShowDialog = Windows.Forms.DialogResult.OK Then
DgvTest.DefaultCellStyle.BackColor = ColorXT.Color
End If
End Sub
Private Sub BtnSecondColor_Click(sender As Object, e As EventArgs) Handles BtnSecndColor.Click
Dim ColorXT As New ColorDialog
If ColorXT.ShowDialog = Windows.Forms.DialogResult.OK Then
DgvTest.AlternatingRowsDefaultCellStyle.BackColor = ColorXT.Color
End If
End Sub
مشكور أخي asemshahen5 ولاكن طلبي كان بخصوص تلوين الأدوات مثل TextBox و Button من خلال أداة ColorDialog
بالنسبة لي لدي القدرة على برمجة كود يعطي اللون لكل أداة من TextBox على حده مثل TextBox1 و TextBox2
ولاكن طلبي كود يقوم بتغير اللون لأداة TextBox لكامل المشروع بضغطة زر واحدة
مشكور على الرد وأرجو الحصول على طلبي
هل تريد معها حفظ ألوان التكست فقط مع لون الخط الخاص بها مع نوع الخط و خاصية الفلات ستايل بتاع الازرار و صورة خلفية موحدة لكل الفورم الموجودة بالمشروع .
أخي أريد أن أغير لون BackColor لكل أداة TextBox موجودة على أي فورم بالمشروع من خلال أداة ColorDialog بضغطه واحدة وحفظ هذا التغيير حتى لو أقفلت المشروع وفتحته من جديد
ياريت توضيح لكيفية وضع TextBoxBackColor في Settings
أخي ياريت الكود يقوم بتغير كل أدوات TextBox بدون ذكر أسمائهم أي ليس كما فعلت أنت بهذا الكود
(26-10-18, 01:41 AM)sads كتب : [ -> ]ياريت توضيح أكثر للكود ولو بشي من التفصيل
هذا لوب يبحث عن كل الأدوات الموجودة في الفورم و الغروب بوكس مع تحديد نوعها يوضع في مديول بالمشروع .
كود :
Public Sub LoadSavedThems(FormXT As Form)'ضع هذا في مديول
For Each crl In FormXT.Controls
If TypeOf (crl) Is GroupBox Or TypeOf (crl) Is Panel Or TypeOf (crl) Is SplitContainer Or TypeOf (crl) Is TabControl Then
For Each cln In crl.controls
If TypeOf (cln) Is TextBox Then
cln.BackColor = Color.FromName(My.Settings.TextBoxBackColor)
End If
Next
End If
If TypeOf (crl) Is TextBox Then
crl.BackColor = Color.FromName(My.Settings.TextBoxBackColor)
End If
Next
End Sub
و الباقي شارح نفسه زر إختيار اللون و زر حفظ للتعديل و الاستدعاء في الفورم لود .
ياريت توضيح لكيفية وضع TextBoxBackColor في Settings
أخي من خصائص دخلت على Settings ووضعت TextBoxBackColor في خانة Name وتركت الباقي كما هوا
هل مافعلته صحيح لأن هناك خطأ عند التنفيذ
الخطأ كالتالي
Control does not support transparent background colors.