我用此構造函數初始化該對象爲什麼observablecollection初始化爲null?
ObservableCollection<MyHomeworkModel> allTabs = new ObservableCollection<MyHomeworkModel>();
原來allTabs是初始化後空。因此,我無法將MyHomeworkModel對象添加到它。
請幫助我,並提前致謝。
using System.Windows.Input;
using System.Collections.ObjectModel;
using MyHomework;
namespace MyHomework__MVVM_
{
class MyHomeworkViewModel
{
private ObservableCollection<MyHomeworkModel> allTabs;
private MyHomeworkModel selectedTab;
public MyHomeworkViewModel()
{
ObservableCollection<MyHomeworkModel> allTabs = new ObservableCollection<MyHomeworkModel>();
selectedTab = new MyHomeworkModel();
AddCourseCommand = new AddCourseCommand(this);
}
public ObservableCollection<MyHomeworkModel> AllTabs
{
get
{
return allTabs;
}
set
{
allTabs = value;
}
}
public MyHomeworkModel SelectedTab
{
get
{
return selectedTab;
}
set
{
selectedTab = value;
}
}
public ICommand AddCourseCommand
{
get;
private set;
}
public void AddNewTab()
{
NewCourseName ncn = new NewCourseName();
ncn.ShowDialog();
if (ncn.courseName != null)
{
MyHomeworkModel newTab = new MyHomeworkModel();
newTab.Header = ncn.courseName;
AllTabs.Add(newTab);
}
}
}
}
你確定你看** ** **對象。答案是你的應用程序中有多個allTabs對象? – Tigran
嘗試創建一個屬性到這個變量,並設置一個斷點到Setter中,而不是在設置爲Null後查看它的運行位置 – Venson
我認爲你錯過了allTabs被更改的地方。在代碼_in isolation_之後,allTabs將**不**爲空。 –