У меня есть эквивалент магазина одежды. Я выставляю постоянные заказы на доставку одежды каждый месяц, но некоторые вещи могут быть гибкими каждый месяц - например, я знаю, что у меня больше шансов продавать черную одежду зимой и более узкие размеры летом.
Есть некоторые элементы порядка, которые не меняются, и некоторые, которые меняются. У меня есть общий порядок на панели и изменяемые элементы, отображаемые на вкладках по месяцам. Некоторые из ItemsSources внутри ComboBox для каждого месяца зависят от значений для заказа; некоторые зависят от значений за этот месяц.
Из-за производительности и из-за того, что классы становятся большими и громоздкими, я действительно хочу получать два разных DataContexts для каждого месяца следующим образом, но, очевидно, я не могу:
---------------------------------------------------------------
| Order |
| OrderItemsSources |
|-------------------------------------------------------------|
| | |
|MonthlyOrder[0] | MonthlyOrder[1] | etc.
|MonthItemsSources[0] | MonthItemsSources[1] | etc.
| | |
-------------------------------------------------------------
Это вкладки внизу; только один виден одновременно. Каждая вкладка содержит около 20 полей, взятых из MonthlyOrder с его ItemsSources в качестве потенциальных значений.
В настоящее время я могу получить доступ только к этим источникам MonthItemsSource через текущий MonthlyOrder. Мой MonthlyOrderViewModel оборачивает как MonthlyOrder, так и MonthItemsSources, которые являются возможными значениями, для которых можно установить поля MonthlyOrder, учитывая другие варианты выбора уже сделанных полей.
---------------------------------------------------------------
| Order |
| OrderItemsSources |
|-------------------------------------------------------------|
| | |
|MonthlyVM.Order[0] | MonthlyVM.Order[1] | etc
|MonthlyVM.ItemsSources[0] | MonthlyVM.ItemsSources[1] | etc.
| | |
-------------------------------------------------------------
Есть ли способ отделить MonthlyOrder от его ItemsSources? Есть ли способ передать индекс в привязку или какую-то ссылку, чтобы я мог поместить вкладки в форму вверху?