Программно добавить ContentTemplate в TabControl

У меня есть этот TabControl

        <TabControl x:Name="tcProvince" Margin="2" ItemsSource="{Binding Path=WorkingEntity.Rates.CodeByProvinceCollection, Mode=OneWay}" SelectionChanged="tcProvince_SelectionChanged" >
        <TabControl.ContentTemplate>
            <DataTemplate>
                <max:MaxGrid>
                    <max:MaxGrid.RowDefinitions>

                    </max:MaxGrid.RowDefinitions>
                    <max:MaxGrid.ColumnDefinitions>

                    </max:MaxGrid.ColumnDefinitions>


                </max:MaxGrid>
            </DataTemplate>
        </TabControl.ContentTemplate>

    </TabControl>

Это создает вкладку, как это: введите описание изображения здесь

Затем внутри каждой вкладки я хочу создать динамическую сетку, например:

+-------+-------+--------+-------+
| 2016  |  2017 | 2018   |  2019 |
+-------+-------+--------+-------+
| xxx   |   xxxx| xxxx   | xxxxx |
+-------+-------+--------+-------+

year а также xxx являются значением, введенным клиентом. Чтобы добавить год он должен нажать на кнопку, и xxx есть ввод TextBox, где он может редактировать его в любое время. Так что я понятия не имею, сколько год и стоимость я получу.

Мой псевдокод выглядит примерно так:

  • На TabControlSelectionChange
  • Если Сетка была сгенерирована, просто отобразите ее.

  • иначе:

  • Возьмите DataTemplate (или создайте новый, не имеет значения)
  • Генерация столбцов в соответствии с коллекцией
  • вставить значения в ячейках
  • создать привязку для TextBox
  • вставьте новую сетку в TabItem

У меня есть почти все инструменты для этого. Я просто могу понять, как установить новую сетку в качестве содержимого TabItem, так как TabItem является типом содержимого моей коллекции

0 ответов

Другие вопросы по тегам