У меня есть приложение Windows 8.1, в котором я пытаюсь достичь 3 уровней иерархии с помощью CollectionViewSource, а затем привязать его к моему семантическому масштабированию.
Мой модельный класс выглядит следующим образом
class Transaction
{
string id {get; set;}
string name {get; set;}
DateTimeOffset date {get; set;
}
Примерная стоимость этой модели может быть следующей
[1, Food, 31/08/2014]
[2, Movie, 15/08/2014]
[3, Medicine, 20/07/2014]
[4, GameConsole, 02/07/2014]
[5, MobileBill, 18/06/2014]
[4, Tv, 06/06/2014]
Я хочу отобразить эти данные в моем Semantic Zoom, чтобы
- Мой ZoomedOutView — это GridView, который отображает такие месяцы, как август, июль и июнь.
- В моем ZoomedInView данные сгруппированы по дате
Для этого мне нужно создать эти 3 уровня в моем CollectionViewSource.
- Месяц
- Дата
- Индивидуальная транзакция
Пример данных для вышеуказанной иерархии показан ниже.
August (Appears in ZoomedOutView only)
August 31
Transaction 1
Transaction 2
August 15
Transaction 3
Transaction 4
August 1
Transaction 5
Transaction 6
July (Appears in ZoomedOutView only)
July 20
Transaction 7
Transaction 8
July 2
Transaction 9
Transaction 10
June (Appears in ZoomedOutView only)
June 10
Transaction 11
Transaction 12
Мой семантический увеличенный вид будет иметь
August
July
June
Мой семантический зум ZoomedInView должен иметь
August 31
Transaction 1
Transaction 2
August 15
Transaction 3
Transaction 4
August 1
Transaction 5
Transaction 6
July 20
Transaction 7
Transaction 8
July 2
Transaction 9
Transaction 10
June 10
Transaction 11
Transaction 12
Я пытаюсь сгруппировать свой список в CollectionViewSource следующим образом
List<Transaction> response = GetTransactions();
var TransactionCollectionViewSource = new CollectionViewSource();
TransactionCollectionViewSource.Source = response.ToGroups(x => x, x => x.date.Month);
TransactionCollectionViewSource.IsSourceGrouped = true;
У меня есть группа по месяцам, как мне снова сгруппировать это по дням? Должен ли я иметь 2 CollectionViewSource? Или можно добиться этого только с одним CollectionViewSource. Я запутался.
Я был бы очень рад, если кто-то может указать мне в правильном направлении. Заранее спасибо.