چگونه یک Setting را در عنصر WPF نمایش دهیم (Bind)؟

تنظیمات یا Settings در پروژه‌های سی‌شارپ لیستی از متغیرها هستند که علاوه بر تنظیم اولیه، در صورت تغییر در حین برنامه به صورت ماندگار ذخیره می‌شوند و با بستن برنامه از بین نمی‌روند؛ به همین دلیل روشی سریع و آسان برای ذخیره تنظیمات کوچک برنامه هستند.

گاهی اوقات لازم است در (مثلا یک فرم ثبت‌نام) برنامه چند TextBox را طوری نمایش دهیم که چند متغیر در آن‌ها دیده شود و کاربر بتواند آن‌ها را ویرایش کند. همانطور که می‌دانید در رابط گرافیکی WPF مفهومی به نام BIND یا متصل کردن وجود دارد که به کمک آن بدون کدنویسی اضافه می‌توان متغیرهایی را به عنوان محتوای یک عنصر قرار داد؛ برای اینکه یک Setting را در عنصر قرار دهیم کافیست این ویژگی را به Window اضافه کنیم:

دقت کنید که به جای NAMESPC نام namespace پروژه خودتان را قرار دهید.

حالا یک Source به نام properties:Settings.Default داریم که می‌توانیم آن را bind کنیم؛ مثلا:

در Path نام تنظیم و در Mode حالت ارتباطی (که TwoWay یعنی اگر کاربر متن را تغییر داد آن تنظیم هم تغییر کند) قرار می‌گیرد.

دقت کنید که در صورتی که ارتباط دو طرفه استفاده می‌کنید حتما با دستور:

از ذخیره شدن تنظیمات مطمئن شوید.

 

چگونه در URI از Resource پروژه آدرس دهیم؟

گاهی اوقات قصد داریم تا پرونده ای را از یک نشانی خشک فراخوانی کنیم (مثل C:/Folder/File.jpg)؛ گاهی اوقات پرونده ما در کنار فایل exe برنامه قرار گرفته که آن هم روش خودش را دارد اما گاهی اوقات می خواهیم از پرونده هایی که در خود سلوشن قرار داده ایم استفاده کنیم.
کد زیر را چندین بار به دست آورده بودم اما فراموش می کردم؛ با شما به اشتراک می گذارم تا خودم هم فراموش نکنم:

ویرایش ۲۳ خرداد ۱۴۰۱: اگر در اسم پروژه از فاصله استفاده شده باشد آن GetName کار نمی‌کند! فعلا اسم پروژه را دستی وارد کردم…

پنجرا – اجرای یک برنامه در برنامه ی دیگر!

برای پیش تولید یکی از پروژه ها، نیاز به کدی بود که با آن بتوانیم یک نرم افزار را داخل یکی دیگر و بدون نوار عنوان اجرا کنیم! ابتدا از شنیدن همچین چیزی شاخ در اوردم و می گفتم اصلا مگر همچین چیزی امکان دارد؟! اما بعد از مقداری جستجو به فناوری OLE رسیدم که مخفف Object Linking & Embedding است و از سال 1990 در حال توسعه است و در حال مرگ هم هست! 😐

پنجرا بر اساس این قابلیت ساخته شده و شما می توانید با کشیدن و رها کردن برنامه ها در پنجرا آن را درون کادر کوچیک مشاهده کنید! همه ی برنامه ها قابلیت پشتیبانی از ole را ندارند و درون کادر اجرا نمی شوند. دو کلید آماده برای اجرای نوت پد و وردپد هم در نرم افزار تعبیه شده است.

شما می توانید پنجرا را از اینجا دریافت کرده و امتحان کنید.