اگر به تکنولوژیهای شرکت مایکروسافت علاقمند باشید و اخبار آن را دنبال کرده باشید قطعا در جریان هستید که علاوه بر تکنولوژیهای قدیمی (WPF, UWP, Xamarin) تکنولوژیهای جدیدی (Project Reunion, Maui, WinUI, Uno, Xaml Island) نیز بصورت همزمان در حال توسعه هستند. اکثر این تکنولوژیها شبیه و نزدیک به هم هستند و برای کسی که تازه کار باشد ممکن است دچار سردرگمی شود و چون بصورت همزمان در حال توسعه میباشند ممکن سوالاتی برای شما پیش بیاید. در این مطلب ...
نکته: این آموزش مبتنی بر دات نت نسخه 5 میباشد (قابل استفاده در نسخه 3.0 و 3.1 نیز میباشد اما تست نشده است). در این آموزش فرض شدهاست که شما توانایی کار کردن با git و گیتهاب را دارید. همچنین دقت کنید که گزینههای زیر در فایل csproj شما موجود باشد، در غیر این صورت ممکن است با خطا مواجه شوید: <IncludeNativeLibrariesForSelfExtract>true</IncludeNativeLibrariesForSelfExtract>
<RuntimeIdentifier>win-x86</Runtime ...
قطعا شرایطی پیش خواهد آمد که شما مجبور شوید دادههایی را به عنوان تنظیمات برنامه در محلی ذخیره کنید و مجددا آنها را فراخوانی کنید. روشهای مختلفی برای این کار وجود دارند که معروفترین و سادهترین راه، استفاده از Settings خود پروژه میباشد. اما این به منزله بهترین راه نیست! در این مطلب قصد داریم تنظیمات برنامه را در یک فایل json، با همان ساختار استانداردش ذخیره و بازیابی کنیم. برای اینکار نیاز به سریالایز و دیسریالایز کردن مدل داریم. اگر ا ...
امروز میخواستم برای یکی از پروژههایم، قابلیتی را پیاده سازی کنم که هماهنگ با تم ویندوز، تم برنامه را عوض کند (تیره/روشن). به این منظور که وقتی تم ویندوز Dark میشد، تم برنامهی من هم Dark بشود و برعکس. سادهترین کار این بود که از کدهای WinRT که توسط بستهی نیوگت SDK Contract ارائه میشود استفاده کرد. در این صورت کافیست فقط از کلاس ThemeManager استفاده کنیم و بدون کوچکترین خونریزی، برنامه را به این ویژگی مجهز کنیم😁 اما خب، هرچیزی هزینهی خ ...
همانطور که اطلاع دارید که طراح xaml و Intellisense در Visual Studio، توانایی شناسایی Resources هایی را که از Libraryهای خارجی میآیند، ندارد. یعنی اگر شما بخواهید از StaticResourceها یا DynamicResourceها استفاده کنید، با یک لیست خالی در Intellisense مواجه خواهید شد و مجبور هستید تا نام Resource را خودتان بطور کامل تایپ کنید. این مشکل بیشتر بخاطر ساختار MergedDictionaryها و تعداد بالای فایلهای Resource پیش میآید. برای حل این مشکل چندی ...
هنگامیکه خطاهای غیر منتظرهای در برنامهی مدیریت شدهی شما رخ میدهند، شما اطلاعات کمی را در مورد این مساله دارید. اگرچه شما میتوانید تا حدودی جلوی این نوع خطاهای غیرمنتظره را با ابزارهای خطایابی و یا لاگر، رصد کنید ولی همیشه اینطور نیست؛ در این حال ذخیره، تجزیه و تحلیل Dumpهای حافظه، ممکن است آخرین گزینه برای شما باشد. خوشبختانه ویژوال استودیو، ابزاری عالی برای تجزیه و تحلیل Dumpهای حافظه است! در این مطلب به شما نشان میدهیم که چگونه ...
دیشب نسخه 6 پیشنمایش دات نت کور 3، منتشر شد و ویژگیهای بسیار خوبی را ارائه کرد و بهانهای شد تا با برخی از ویژگیها مخصوص خروجی گرفتن از برنامه در دات نت کور 3 آشنا بشویم. PublishSingleFile توسط این دستور میتوانید برنامه خودتان را همراه با تمام اسمبلیها و فایلها، در یک فایل Exe قرار دهید و اجرا کنید. برای بار اول اجرا ممکن است چند ثانیه طول بکشد ولی از دفعات بعد، تاخیری در اجرا نخواهیم داشت. در واقع این روش تمام فایلها ر ...
همانطور که اطلاع دارید، کنترلهای Calendar و DatePicker در WPF، از تقویمهای مختلف پشتیبانی نمیکنند و نمونههایی که در سطح اینترنت موجود است، ظاهر و استایل مناسبی ندارند. بنابر این تصمیم گرفتم تا خودم دست به کار شوم و این کمبود را حل کنم. نتیجهی آن شد کتابخانهی PersianToolkit که بصورت استاندارد تقویم شمسی را به کنترلهای Calendar و DatePicker اضافه میکند و استایلهای زیبایی را هم به همراه خود دارد. این کتابخانه شامل تمام مناسبتهای ...