the_king
مدیرکل انجمن
در حالت کلی من مزیت خاصی برای هیچ روشی قائل نیستم، علاوه بر اینکه به سلیقه برنامه نویس بستگی داره، هر کدوم ممکنه بر اساس شرایط پروژه شما گزینه مطلوبی باشه. یک مثال ساده اش اینه که اگر تعداد مشخصه هایی که null نبودنشون رو بررسی می کنید زیاد باشه، یک بار پیاده سازی IValueConverter کد کمتری لازم داره و شسته رفته تر میشه تا تعریف کردن تعداد زیادی مشخصه که همگی کار مشابهی رو انجام می دهند. نهایتا یک انتخاب شخصی ئه.سلامی مجدد
خیلی ممنون استاد .
استاد ، بهتر نیست بجای پیاده سازی IValueConverter ، یه پروپرتیِ مجزا (از نوع bool) برای اینکه مشخص کنم که مقدار اون پروپرتیِ مورد نظرمون null هست یا نه ، ایجاد کنیم؟
هم راحت تر از پیاده سازی IValueConverter هست و هم انگار در عملکرد ، فرقی نداره .
درست میگم؟
جستجو کنید. جواب همه این سوالات در پاراگراف های ابتدایی مطالبی که در موردشون نوشته میشه هست.خروجی Uno platform در مرورگر اینترنتی اجرا میشه ؟
یعنی مثل نرم افزارهایی مثل wpf و اینها ، بصورت فایل exe اجرا نمیشه؟
پلتفرم uwp چطور؟
میشه با .net 5 و توسط پلتفرم uwp ، برنامه را در بقیه ی سیستم عامل ها اجرا کرد؟
صد البته که ربط داره، شما هر کلاسی که بسازید یا بکار ببرید، چه MyClass و چه Control، با object هایی سر و کار دارید که تحت NET. ئه، مگر میشه کدی در NET. نوشته و اجرا بشه که به NET. ربطی نداشته باشه. اما NET. مگه در WPF و Windows Forms دو تا NET. متفاوت ئه که کنترل هاشون اینقدر با هم فرق داره؟اگه اشتباه نکنم ، قبلا گفته بودید که همه ی این کلاس ها (مثل control و ...) که باهاشون کار میکنیم ، به چهارچوب کاری (که در حال حاضر توسط .net framework استفاده میکنیم) ربط داره .
این کنترل های بصری که میگید در NET. ارائه شده؟ شما در برنامه Windows Forms تون که تحت NET. ئه مثلا کنترل Grid دارید؟خوب چهارچوب .net 5 و .net core میتونه کلا متفاوت از .net framework باشه و شاید اصلا کنترل های بصری (مثل control و windows و form و ...) را اصلا ارائه نداده باشن . حالا من نمیدونم . چون با .net 5 و .net core آشنا نیستم .
در برنامه WPF تون که تحت NET. ئه DataGridView دارید؟ در برنامه کنسولی تون که تحت NET. کدوم یکی از اینها ارائه شده که میگید شاید در NET Core. و NET 5. ارائه نشده باشند؟
غیر از اینه که شما در NET. واسط کاربری رو در WPF یا Windows Forms طراحی کرده اید؟
غیر از اینه که DataGridView در Windows Forms ارائه شده و Grid در WPF؟ غیر از اینه که System.Windows.Controls.Control با System.Windows.Forms.Control دو کلاس کاملا متفاوت و ناسازگار هستند که یکی به WPF تعلق داره و دیگری به Windows Forms و هیچکدوم در برنامه های کنسولی NET. نیستند؟ اون برنامه کنسولی تحت NET. محسوب نمیشه که هیچکدوم از این کنترل ها داخلش ارائه نشده؟
اگر قبول دارید که Control و Window نه در معماری NET. بلکه در پلتفرم های Windows Forms و WPF با ساختار خاص خودشون ارائه شده اند و میدونید که WPF و Windows Forms هم در NET Framework. و هم در NET Core. پشتیبانی شده، دیگه ابهام در چیه؟
قبلا هم گفتم که مستندات هر کدوم از اون کنترل ها در سایت مایکروسافت سمت چپ تنظیم Version داره، در لیستش NET Framework. هست، NET 5. هست، NET Core. هم هست. در هر کدوم که نباشه بالای صفحه پیام میده که این کلاس در این نسخه موجود نیست.