基本型を持たないクラスは、属性を使用して INotifyPropertyChanged
コードを生成するのではなく、 ObservableObject
からの継承を優先する必要があります。そうすることで、アプリケーションのバイナリ サイズが小さくなります (属性は、注釈付き型が既に別の型から継承されている場合のみをサポートするためのものです)。 この診断は、特に [INotifyPropertyChanged]
が使用される場合に適用されます。
次の例では MVVMTK0032 が発生します。
using CommunityToolkit.Mvvm.ComponentModel;
namespace MyApp;
[INotifyPropertyChanged]
public partial class SampleViewModel
{
}
次のようにコードを更新することで修正できます。
using CommunityToolkit.Mvvm.ComponentModel;
namespace MyApp;
public partial class SampleViewModel : ObservableObject
{
}
その他のリソース
- 単体テストでは、さらに他の例を見つけることができます。
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
MVVM Toolkit