MVVM trong WFP (Part 4/4): Data Validation

WPF - Data Validation - IDataErrorInfoKiểm tra tính hợp lệ của dữ liệu là một phần quan trọng trong mọi ứng dụng. Trong mô hình MVVM, ta có thể thực hiện việc kiểm tra này bằng cách sử dụng hai interface IDataErrorInfo . Ta sẽ hiện thực các interface này cho các class của phần Model.

Đọc tiếp

MVVM trong WPF (Part 3/4): Sử dụng RelayCommand cho các loại control

input devices settingsBởi vì chỉ có các class ButtonBase, MenuItem và Hyperling được hiện thực interface ICommandSource, nên chúng mới có các thuộc tính Command, CommandParameter, CommandTarget để có thể sử dụng binding cho đối tượng RelayCommand. Đối với các loại control khác, ta cần tìm giải pháp khác thay thế để hiện thực được mô hình MVVM với RelayCommand.

Đọc tiếp

MVVM trong WPF (Part 2/4): RelayCommand

MVVM - Model View ViewModel PatternViệc tạo một custom RoutedCommand trong WPF rất đơn giản, bạn chỉ việc sử dụng CommandBinding là có thể tạo một command tùy ý. Tuy nhiên để ứng dụng mô hình MVVM, ta không thể sử dụng loại command thông thường, mà phải tạo một loại command mới có thể tách biệt được với giao diện. Loại command mà tôi muốn nói tới được gọi là Relay Command.

Đọc tiếp

MVVM trong WPF (Part 1/4): INotifyPropertyChanged và INotifyCollectionChanged

WPF - Binding Notification ExampleKhi sử dụng data binding, các control hiển thị dữ liệu sẽ động được cập nhật mỗi khi dữ liệu bị thay đổi. Để làm được điều này, các đối tượng dữ liệu được hiện thực interface INotifyPropertyChanged và INotifyCollectionChanged.

Đọc tiếp

Cơ bản về MVVM (Model – View – ViewModel) Pattern

View - ViewModel - Model patternKể từ khi Microsoft giới thiệu hai nền tảng phát triển ứng dụng mới là WPF và Silverlight, đã có nhiều thay đổi trong việc xử lý sự kiện và binding dữ liệu, giữa các tầng của ứng dụng với nhau. Qua đó, hầu hết các công việc của tầng kết hợp với lớp presentation. Điều này làm nảy sinh ra nhu cầu phải có một mô hình phát triển ứng dụng mới phù hợp hơn. Và do đó, Model – View – ViewModel (MVVM) pattern ra đời và ngày càng trở nên phổ biến.

Đọc tiếp