نقل قول نوشته شده توسط ma.andishe مشاهده تاپیک
خیلی ممنون از پاسختون،اینکه همه کدها رو اینجا نوشتم صرفا میخواستم روش ارتباط ویو و ویو مدل رو بدونم،
سلامی مجدد
ارتباط View با ViewModel زمانی انجام میشه که View تون بخواد با Model تون ارتباط برقرار کنه . چون ViewModel ، رابط و ارتباط دهنده ی لایه های View با Model هست .

اون هم ViewModel نباید هر شی ای را انتقال بده . در واقع ، هر لایه ، وظایف خودش را باید انجام بده . لایه ی View ، با کنترل ها سر و کار داره ، بنابراین نباید در Model ، با شیِ کنترل ای سر و کار داشته باشین تا ViewModel تون اون شیِ کنترل را به Model تون منتقل کنه (نباید این طور باشه) .

این ، از وظایف لایه ها .
اما روش ارتباط View با ViewModel ، به انواع مختلفی میتونه ارتباط داشته باشن .
ارتباط View با ViewModel ، میتونه توسط Binding ، توسط Command ها ، توسط رویدادها و متدها و ... انجام بشه .
ارتباط ViewModel با View هم میتونه از طریق پیاده سازی اینترفیس INotifyPropertyChanged و INotifyCollectionChanged و ObservableCollection در ViewModel (در صورتی که Binding انجام بشه) و یا توسط مقدار بازگشتی در یک متد (و ...) انجام بشه .

نقل قول نوشته شده توسط ma.andishe مشاهده تاپیک
فقط یه نکته دیگر اگر هر رکورد در دل خودش حاوی لیستی از جزییات باشه ایا میشه زمانی که روی رکورد کلیک کرد لیست مربوط به همون رکورد بایند بشه به لیست ویو؟
بازم بسیار تشکر از اینکه وقت میگذارید
عملِ Binding را برای هر جایی میتونید استفاده کنید .
حتی Binding را میتونید از View ، به اعضای Model هم انجام بدید (البته به واسطه ی اعضای ViewModel باید به اعضای Model دسترسی داشته باشید که مشخص هست) .

چون Binding ، زمان اجرا هم عملیاتش را انجام میده . یعنی در زمان اجرا و در رویدادِ مورد نظرش که اتفاق افتاد ، دنبال Source اش یا DataContext ئه والدش میگرده (و تا اون موقع ، میتونیم هم تغییرشون بدیم) .