アプリケーションに複数のviewModelがあり、それらをViewModelLocatormvvmlightでバインド/使用しています。DailyActivities.xamlページの1つでボタンを実行しました。しかし、それをクリックすると、「オブジェクト参照がオブジェクトのインスタンスに設定されていません」などのエラーがViewModelLocatorに表示されます。そして制御はこの線に来る:
public static void ClearActivities(){_activities.Cleanup(); //ここでエラー_activities=null; }
ViewModelLocatorのDailyActivitiesViewModelのコードは次のとおりです。
プライベート静的ActivitiesViewModel_activities;
public static ActivitiesViewModel ActivitiesStatic
{
get
{
if (_activities == null)
{
CreateActivities();
}
return _activities;
}
}
/// <summary>
/// Gets the ViewModelPropertyName property.
/// </summary>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance",
"CA1822:MarkMembersAsStatic",
Justification = "This non-static member is needed for data binding purposes.")]
public ActivitiesViewModel Activities
{
get
{
return ActivitiesStatic;
}
}
/// <summary>
/// Provides a deterministic way to delete the ViewModelPropertyName property.
/// </summary>
public static void ClearActivities()
{
_activities.Cleanup(); --Error here
_activities = null;
}
/// <summary>
/// Provides a deterministic way to create the ViewModelPropertyName property.
/// </summary>
public static void CreateActivities()
{
if (_activities == null)
{
_activities = new ActivitiesViewModel();
}
}
親切に提案しますか?
ありがとう