Tôi đã tìm kiếm xung quanh nhưng tôi dường như không thể tìm thấy những gì tôi đang tìm kiếm, vì vậy tôi sẽ đưa nó vào đây.C# WPF Làm thế nào để đặt phương thức setter bất động sản?
Tình huống: Tôi có lớp MainWindow và MainWindowData. Trong MainWindowData chỉ là các thuộc tính công khai được định nghĩa với thuộc tính UpdateGUI.
public class UpdateGUI : Attribute { }
public class MainWindowData
{
[UpdateGUI]
public string TESTVAR { get; set; }
}
Bây giờ tôi muốn thêm phương thức vào phương thức setter của mỗi thuộc tính trong MainWindowData. cụ thể hơn:
void OnPropertyChanged(String PropertyName);
tôi figured tôi muốn lấy toàn bộ tài sản UpdateGUI trong constructor MainWindow, và sau đó bằng cách nào đó thêm một phương pháp khác với nó, nhưng đây là nơi tôi bị mắc kẹt. tôi sử dụng mã này để lấy tất cả tài sản, trong đó hoạt động:
List<PropertyInfo> properties = (from pi in typeof(MainWindowData).GetProperties()
where pi.GetCustomAttributes(typeof(UpdateGUI), false).Any()
select pi).ToList();
này mang lại cho tôi một danh sách tốt đẹp của tất cả tài sản mà tôi phải cập nhật.
Vì vậy, câu hỏi là: làm thế nào tôi có thể làm cho nó để các thuộc tính tự động được chuyển đổi từ:
tới:
[UpdateGUI]
private string _TESTVAR;
public string TESTVAR {
get {
return _TESTVAR;
}
set {
_TESTVAR = value;
OnPropertyChanged("TESTVAR");
}
}
Cảm ơn bạn đã giúp đỡ nào! Nó sẽ được đánh giá cao :)
Greetings
+1 Câu hỏi thú vị, sẽ rất thú vị nếu thấy điều gì xảy ra. –