Giả sử tôi có một ViewModel TabViewModel
mở rộng ObservableObject
lớp cho ViewModels trong Khuôn khổ nền tảng MVVM. Sau đó, tôi cũng có một số EditorTabViewModel
kéo dài TabViewModel
, Bây giờ tôi cần mở rộng DependencyObject
để triển khai DependencyProperties. Tôi không thể kéo dài quá 1 lớp. Làm thế nào tôi có thể thực hiện điều này? Tôi có thể có lớp "trung gian" như ...C#: Mở rộng từ hơn 1 lớp
TabViewModel : ObservableObject
EditorTabViewModel : TabViewModel
DependentEditorTabViewModel : DependencyObject
nhưng đó là thêm 1 lớp không cần thiết. Bất kỳ cách nào tốt hơn để làm điều này?
CẬP NHẬT
Ops thực sự tôi không thể làm các việc trên. DependentEditorTabViewModel
vẫn cần mở rộng EditorTabViewModel ... ngoài DependencyObject
Tôi nghĩ mình đã phạm sai lầm tương tự ... ngoài 'DependencyObject', tôi vẫn cần mở rộng' ObservableObject'. Nói cách khác, tôi cần lớp kết quả để mở rộng chủ yếu 'DependencyObject',' ObservableObject'. –
Ok. Thật không may, C# không hỗ trợ đa kế thừa. Thay vào đó hãy xem xét triển khai giao diện. –