PDA

View Full Version : ثبت رنگ در رجیستری



hrbaban
جمعه 06 شهریور 1388, 10:52 صبح
سلام . . .

من میخوام بعد از انتخاب رنگ از ColorDialog ، رنگ انتخابی رو در رجیستری ذخیره کنم تا در اجرای بعدی برنامه بتونم از اون استفاده کنم .

شرح برنامه :
یه فرم دارم که رنگ Background میخوام با colordialog عوض بشه و با اجرای مجدد برنامه همون رنگ انتخابی در Background فرم باشه .



مرسی . . .

heivin
جمعه 06 شهریور 1388, 11:31 صبح
http://barnamenevis.org/forum/showthread.php?t=158666

hrbaban
جمعه 06 شهریور 1388, 14:44 عصر
قبلا در یه برنامه ای دیدم که برای ذخیره نام کاربر در هنگام لاگین کردن از دستور زیر برای ذخیره استفاده میکرد :
Application.UserAppDataRegistry.SetValue
و برای فراخوانی از :
Application.UserAppDataRegistry.GetValue

اما نمی دونم اینها رو چطوری برای ذخیره رنگ استفاده کنم ؟ کسی میدونه؟
آیا راه بهتری سراغ دارید ؟

علیرضا مداح
جمعه 06 شهریور 1388, 16:10 عصر
سلام دوست عزیز،
شما می توانید کد ARGB رنگ مورد نظر را در رجیستری ذخیره نمایید،
برای ذخیره:

RegistryKey key = Application.UserAppDataRegistry;
key.SetValue("Color", Color.Red.ToArgb(),RegistryValueKind.DWord);

برای خواندن:

RegistryKey key = Application.UserAppDataRegistry;
int argb = Convert.ToInt32(key.GetValue("Color", RegistryValueKind.DWord));
Color cl = Color.FromArgb(argb);


اما یکی از بهترین و اصولی ترین راه ها برای ذخیره رنگ و دیگر تنظیمات کاربر، استفاده از ساختار XML و بهره گیری از Settings می باشد:
Using Settings in C#‎‎‎ (http://msdn.microsoft.com/en-us/library/aa730869(VS.80).aspx)
،/