我有以下的樣本數據,其工作地非常好......在Expression Blend中重用設計數據?
<SampleData:DashboardViewModel xmlns:SampleData="clr-namespace:MyApp.ViewModels">
<SampleData:DashboardViewModel.Employees>
<SampleData:EmployeeViewModel FirstName="Aaron" "Adams" />
<SampleData:EmployeeViewModel FirstName="Billy" "Bob" />
<SampleData:EmployeeViewModel FirstName="Charlie" "Chaplin" />
</SampleData:DashboardViewModel.Employees>
</SampleData:DashboardViewModel>
不過,我覺得這將是能夠重用樣品的員工是列表,而不是每次都重新鍵入它是有用的。我無法弄清楚如何重用這個列表。基本上,我想有一個包含員工該列表,然後能夠包括我的其他樣本中另一個的sampleData文件(SampleEmployees.xaml)...
<SampleData:DashboardViewModel xmlns:SampleData="clr-namespace:MyApp.ViewModels">
<SampleData:DashboardViewModel.Employees ... /> <!-- What goes in there? -->
</SampleData:DashboardViewModel>
<SampleData:OtherViewModel xmlns:SampleData="clr-namespace:MyApp.ViewModels">
<SampleData:OtherViewModel.Employees ... /> <!-- What goes in there? -->
</SampleData:OtherViewModel>
此外,如何在單獨創建列表另一個XAML文件?
視圖模型:
public class DashboardViewModel : NotificationObject
{
public class DashboardViewModel(IDataService dataService)
{
InternalEmployees = new ObservableCollection<EmployeeViewModel>(dataService.GetEmployees());
Employees = new ReadOnlyObservableCollection<EmployeeViewModel>(InternalEmployees);
}
private ObservableCollection<EmployeeViewModel> InternalEmployees { get; set; }
public ReadOnlyObservableCollection<EmployeeViewModel> Employees { get; private set; }
}
我不認爲這是可能的默認系統。我認爲必須創建一個[CustomTool](http://www.google.com/search?q=visual+studio+custom+tool)來解析源文件,然後生成另一個設計數據文件。這將防止重新輸入,但生成的生成文件仍然包含完整的數據(不是對其他數據的「引用」)。 –
所以基本上我需要把它變成微軟連接的建議? –
去吧。注意VS2011在dev預覽中,而Blend 5處於類似的階段,所以如果他們不支持它,我不會預見他們實現這個功能... –