我需要从 DataContext 获取无类型的 QueryableCollection 来查询它。我有以下代码:
printAbleListView = (ListView) printObject.FindName("printAbleListView");
// Here I like to have something like ObservableCollection<Object>
ObservableCollection<Journal> allItems = (ObservableCollection<Journal>) printAbleListView.DataContext;
// Add the page to the page preview collection
for (int i = 0; i <= (allItems.Count()/30); i++)
{
printAbleListView.DataContext = null;
printAbleListView.DataContext = allItems.Skip(30 * i).Take(30);
document.SetPreviewPage((i + 1), printObject);
}
目标是打印出 Metro 风格 Windows 8 应用程序中的任何 ListView。目前它被输入到Journal
DataType,但我喜欢让它不被输入,这样这个函数就可以被每个 ListView 重用,而不仅仅是Journal
那些。我可以存档吗?