
آموزش Data Binding پیشرفته در دبلیو پی اف (WPF)
آموزش ویدئویی دیتا بایندینگ Data Binding پیشرفته در دبلیو-پی-اف WPF یکی دیگر از آموزش های گروه آموزشی پرووید می باشد که در این قسمت آن را به شما معرفی می کنیم. این بسته ی آموزشی نیز یکی از دوره های آموزشی دیگر که در حوزه ی فارسی سازی آموزش های انگلیسی تنظیم شده است می باشد. عنوان این بسته ی آموزشی Data Binding عمیق در WPF است که با نام اصلی WPF Data Binding in Depth از شرکت Pluralsight منتشر شده است.
WPF چیست؟
WPF سر آغاز سه کلمه Windows Presentation Foundation می باشد. هر کسی که تا به حال در محیط های گرافیکی و یا به اصلاح برنامه نویسان، محیط های ویژوال، برنامه نویسی کرده باشد، یقینا با مفاهیم Windows Application ها که گاها به صورت مخفف WinApp نیز نامیده می شوند، آشنا می باشد.

این نوع برنامه نویسی همزمان با ورود سیستم عامل های ویندوز در دنیای کامپیوتر شروع شد و روز به روز با به وجود آمدن زبان های متفاوت جایگاه محبوبتری نزد برنامه نویسان پیدا کرد.
Data Binding چیست؟
مفهوم و تکنیک Data Binding در WPF یکی از اساسی ترین و مهمترین مفاهیم است. با استفاده از Data Binding در برنامه های WPF امکان کار کردن با داده ها با روشی سازمان یافته فراهم می شود.

با استفاده از XAML و یا کدهای CLR می توان کنترل های مختلف را به منابع داده (Data Source) مختلف متصل کرد.
انواع Data Source در WPF و نحوه اتصال دادهها
در WPF، Data Binding به کنترلهای رابط کاربری اجازه میدهد مقادیر خود را از یک منبع داده دریافت کنند و در صورت پیکربندی مناسب، تغییرات دادهها را نیز منعکس کنند. منبع داده میتواند یک ویژگی از یک شیء، مجموعهای از اطلاعات یا ساختاری باشد که دادههای موردنیاز رابط کاربری را فراهم میکند. انتخاب منبع مناسب به نوع اطلاعات، نحوه تغییر آنها و ساختار برنامه بستگی دارد و در طراحی رابطهای کاربری پویا اهمیت دارد.
در این دوره، انواع Data Source و مفاهیم اساسی Data Binding با جزئیات بررسی میشوند. این مباحث برای برنامهنویسان WPF مفید هستند که میخواهند ارتباط میان دادهها و کنترلهای رابط کاربری را بهتر مدیریت کنند. شناخت نحوه تعیین منبع داده و اتصال آن به ویژگیهای کنترل، از تکرار کدهای غیرضروری برای بهروزرسانی رابط جلوگیری میکند و ساختار برنامه را قابل فهمتر میسازد.
Data Template در WPF چه کاربردی دارد؟
Data Template در WPF مشخص میکند دادهها چگونه در رابط کاربری نمایش داده شوند. هنگامی که یک کنترل مجموعهای از اشیا را نمایش میدهد، میتوان از Data Template برای تعیین ظاهر هر آیتم استفاده کرد. به این ترتیب، ساختار بصری نمایش دادهها از خود مدل داده جدا میشود و توسعهدهنده میتواند نحوه ارائه اطلاعات را متناسب با نیاز رابط کاربری طراحی کند. این قابلیت در نمایش فهرستها و مجموعههای داده اهمیت زیادی دارد.
در این آموزش، Data Templateها بهصورت عمیقتر بررسی میشوند تا ارتباط میان ساختار داده و نمایش آن در WPF روشنتر شود. این موضوع در کنار Data Binding به توسعهدهنده امکان میدهد رابطهای کاربری انعطافپذیرتری بسازد. با تعریف قالبهای مناسب، میتوان اطلاعات هر آیتم را به شکلی منظم نمایش داد و ظاهر کنترلهای مجموعهای را بدون تغییر ساختار اصلی دادهها مدیریت کرد.
استفاده از Container Control و Collection Control در WPF
Container Controlها و Collection Controlها در سازماندهی عناصر رابط کاربری و نمایش مجموعهای از اطلاعات نقش دارند. کنترلهای کانتینری میتوانند عناصر دیگر را در خود جای دهند و ساختار صفحه را شکل دهند، در حالی که کنترلهای مجموعهای برای نمایش چندین آیتم بر اساس دادهها به کار میروند. درک تفاوت و کاربرد این کنترلها به توسعهدهنده کمک میکند محل مناسب هر عنصر را در رابط کاربری انتخاب کند و دادهها را با ساختاری متناسب نمایش دهد.
در برنامههای WPF، استفاده از این کنترلها در کنار Data Binding باعث میشود نمایش دادهها از منطق تولید یا نگهداری آنها جدا بماند. این دوره به بررسی Container Controlها و Collection Controlها میپردازد و ارتباط آنها را با مباحث Data Binding روشن میکند. آشنایی با این مفاهیم برای برنامهنویسانی مفید است که میخواهند رابطهای کاربری دادهمحور بسازند و نمایش اطلاعات را به شکلی قابل توسعه و نگهداری سازماندهی کنند.
اعتبارسنجی ورودیها با Data Binding در WPF
در برنامههای دسکتاپ، کاربر ممکن است اطلاعاتی را از طریق TextBoxها و سایر کنترلهای ورودی وارد کند. اعتبارسنجی این اطلاعات پیش از استفاده یا ذخیرهسازی اهمیت دارد، زیرا دادههای نامعتبر میتوانند باعث خطا در منطق برنامه شوند یا نتیجهای غیرمنتظره ایجاد کنند. WPF امکاناتی برای اتصال دادهها و مدیریت وضعیت اعتبارسنجی فراهم میکند تا توسعهدهنده بتواند ورودیها را با قواعد موردنیاز برنامه بررسی کند و خطاها را در رابط کاربری منعکس سازد.
در این دوره، Data Input Validation در کنار بررسی عمیق Data Binding مطرح میشود. این مباحث به برنامهنویسان کمک میکنند نحوه ارتباط دادههای ورودی با مدل برنامه و روش بررسی معتبر بودن آنها را بهتر درک کنند. با طراحی مناسب Binding و اعتبارسنجی، میتوان رفتار فرمها را منظمتر کرد و بازخورد مناسبی برای دادههای نادرست در نظر گرفت. این موضوع برای ساخت برنامههای WPF که با ورود و ویرایش اطلاعات سروکار دارند، کاربردی است.
سرفصل مطالب آموزش ویدئویی Data Binding پیشرفته در WPF
فصل اول: مقدمه ی دوره ی آموزشی- مقدمه
- مقدمه
- بررسی Data Binding
- مقایسه Data Binding و Data Access
- بررسی Source و Target در Data Binding
- بررسی اجزای تشکیل دهنده ی Data Binding
- بررسی Data Context و Scope
- بررسی اولین مثال
- بررسی یک مثال بدون استفاده از Data Binding
- بررسی یک مثال با Data Binding ساده
- بررسی یک مثال با استفاده از Data Context
- جمع بندی
- مقدمه
- بررسی Binding به Entity ها و Collection ها
- انجام عملی Binding به Entity ها و Collection ها
- بررسی Change Notification
- پیاده سازی عملی INotifyPropertyChanged
- بررسی Dependency Property
- پیاده سازی عملی Dependency Property
- بررسی Observable Collection ها
- استفاده عملی از Observable Collection ها
- بررسی Editable Object ها
- استفاده عملی از Editable Object ها
- بررسی Collection View ها
- استفاده عملی از Collection View ها
- بررسی Data Binding با Data Set ها
- پیاده سازی عملی Data Binding با Data Set ها
- بررسی Data Binding با داده های XML
- پیاده سازی عملی Data Binding با داده های XML
- جمع بندی
- مقدمه
- بررسی Binding Source ها
- بررسی عملی RelativeSource در Binding
- بررسی عملی ElementName در Binding
- بررسی عملی Source در Binding
- بررسی Property Path در Binding
- استفاده عملی از Property Path در Binding
- بررسی Mode و Directionality در در Binding
- استفاده عملی Mode در Binding
- استفاده عملی از Default به عنوان Mode در Binding
- جمع بندی
- مقدمه
- بررسی UpdateSourceTrigger در Binding
- استفاده عملی از UpdateSourceTrigger در Binding
- بررسی Converter ها در Binding
- استفاده عملی از Converter ها در Binding
- بررسی Binding های Async
- استفاده عملی از Binding های Async
- بررسی Fallback Value ها در Binding
- استفاده عملی از بررسی Fallback Value ها در Binding
- بررسی StringFormat در Binding
- استفاده عملی از StringFormat در Binding
- بررسی MultiBinding و PriorityBinding
- جمع بندی
- مقدمه
- بررسی Data Template ها
- بررسی Data Template های Explicit
- پیاده سازی عملی Data Template های Explicit
- بررسی Data Template های Implicit
- پیاده سازی عملی Data Template های Implicit
- بررسی Data Template Selector ها
- استفاده عملی از Data Template Selector ها
- بررسی Hierarchical Data Template ها
- استفاده عملی از Hierarchical Data Template ها
- جمع بندی
- مقدمه
- بررسی پنجره Data Source ها و Properties
- آموزش عملی تولید DataGrid با Data Source ها
- آموزش عملی ایجاد فرم های ورودی
- آموزش عملی استفاده از پنجره Properties
- آموزش عملی سفارشی کردن Control Mapping های Data Source ها
- آموزش عملی مرتبط کردن کنترل های موجود
- ویرایش کردن Data Template
- آموزش عملی ویرایش کردن Data Template
- بررسی Design Time Data
- آموزش عملی ویژگی های Design Time Data
- آموزش عملی داده های نمونه Design Time Data
- جمع بندی
- مقدمه
- بررسی Container Control ها
- آموزش عملی بازرسی Visual Tree
- آموزش عملی Dynamic Data Control Visual Tree
- آموزش عملی ابزارهای Visual Tree از قبیل Mole و WPF Inspector
- بررسی ComboBox ها و ListBox ها
- آموزش عملی ComboBox ها و ListBox ها
- بررسی انجام Data Binding در TabControl
- آموزش عملی انجام Data Binding در TabControl
- ویژگی های DataGrid
- آموزش عملی ویژگی های DataGrid
- بررسی Collection View ها
- آموزش عملی مرتب سازی، فیلتر کردن، گروه بندی با CollectionViewSource
- آموزش عملی پیاده سازی Master-Details با CollectionViewSource ها
- جمع بندی
- مقدمه
- اعتبار سنجی بر روی استثناها
- آموزش عملی اعتبار سنجی بر روی استثناها
- اعتبار سنجی با ValidationRuleها
- آموزش عملی اعتبارسنجی با ValidationRuleها
- اعتبارسنجی با IDataErrorInfo
- آموزش عملی اعتبارسنجی با IDataErrorInfo
- اعتبار سنجی با INotifyDataError
- آموزش عملی اعتبار سنجی با INotifyDataError
- انجام Binding با Event ها
- آموزش انجام Binding با Event ها
- بررسی Template های مربوط به خطای اعتبارسنجی
- آموزش عملی نمایش سفارشی خطای اعتبارسنجی
- بررسی DataAnnotation ها
- آموزش عملی DataAnnotation ها
- جمع بندی
- جمع بندی دوره آموزشی







