سلام.دوستان راهی هست که بشه بدون کد نویسی تغییرات کمبو باکس رو ذخیره کرد؟
سلام.دوستان راهی هست که بشه بدون کد نویسی تغییرات کمبو باکس رو ذخیره کرد؟
سلام دوست عزیز واضجتر بگین
یعنی وقتی یک ایتم رو انتخاب میکنن و دوباره برنامه رو اجرا میکنن همون ایتم نشون داده بشه.
چرا کسی جواب نمیده؟
خیر، نمیشه مگر در صورتی که موقع initialize کردن کامپوننت اونو مقدار دهی کرد که یا باید توسط خودتون داخل برنامه انجام بشه یا اینه کنترل رو طوری تغییرش بدین (یه کنترل بر پایه کلاس اون کنترل بسازین) که موقع تغییر یکی از مقادیرش، مقدار جدید یا اصلاحی رو یه جایی مثل یه فایل xml یا ini یا رجیستری ذخیره کنه و موقع نمایش بعدی خودش موقع initialize کردن اونا رو دوباره لودش کنه.
بدون کد نویسی که امکان نداره ولی از Settings استفاده کنید
یک متغیر مثلا از نوع integer تعریف کنید و ایندکس انتخاب کاربر رو به اون اختصاص بدید
دفعه بعد روی رویداد application.startup اون متغیر رو به selectedindex در combobox تنظیم کنید.
در سه حرکت !!!
ممنون . میشه کد کاملشو بذارید؟
لطفاً از Setting تکست باکس هم یه مثال بزنید.
سلام
در فیلد Name یه اسم مناسب برای ذخیره کردن State مطلوب از Object مورد نظر وارد کنید. فیلد Type نوع مقدار رو مشخص میکنه، مثلاً برای ذخیره SelectedIndex یک ComboBox میتونید از int و برای ذخیره متن یک TextBox از string استفاده کنید. اگر این مقدار برای تمام کاربران نرم افزار ثابت هست، فیلد Scope رو روی Application و در غیر اینصورت بر روی User تعریف کنید. توجه کنید که تنظیم Scope بر روی Application به معنی این هست که اون مقدار در برنامه ثابت (Read-Only) هست و دیگر نمیتونید تغییرش بدهید. بنابراین برای مقادیر با Scope کاربر میتونیم (برای مثال برای کمبوباکس) به صورت زیر در برنامه مقداردهی کرده و اون رو ذخیره کنیم:SolutionExplorer » Solution » Project » Properties » Settings.settings
Properties.Settings.Default.ComboBox1SelectedIndex = combo1.SelectedIndex;
Properties.Settings.Default.Save();
برای بارگزاری هم که مشخصاً در محل مناسب مینویسیم:
combo1.SelectedIndex = Properties.Settings.Default.ComboBox1SelectedIndex ;
ممنون اقای رافعی من کد رو وارد کردم ولی این ارور رو داد:
'PhotoPaeezan.Properties.Settings' does not contain a definition for 'ComboBox1SelectedIndex' and no extension method 'ComboBox1SelectedIndex' accepting a first argument of type 'PhotoPaeezan.Properties.Settings' could be found (are you missing a using directive or an assembly reference?)
چه زمانی این خطا رو میده؟ هنگام بستن برنامه یا لود.
آآ!!
مثل اینکه توضیحاتم به اندازه کافی گویا نبوده! مقدار ComboBox1SelectedIndex فقط یک مثال بود.
خب از اول: فرض کنیم که شما در SolutionExplorer فایل Settings.settings رو نمیبینید. روی پروژه مورد نظر مطابق شکل زیر راست کلیک کرده و گزینه Properties رو انتخاب کنید.
طبق شکل زیر به بخش مربوط به Settings پروژه بروید.
حالا مطابق شکل زیر یک مقدار دلخواه (مثلاً ComboBox1SelectedIndex) رو در فیلد Name تعریف کنید و نوع اون رو هم بر اساس نیاز (مثلا int) مشخص کنید.
بقیه مراحل هم عیناً مطابق پست قبل انجام میشوند.
آخرین ویرایش به وسیله رافعی مهدی : چهارشنبه 06 اردیبهشت 1391 در 11:17 صبح دلیل: تصحیح URL تصاویر