У меня есть основная сетка данных, а под ней - элемент управления «аккордеон». В одном из элементов аккордеона у меня есть еще одна сетка данных, которая привязывается к выбранному элементу первой сетки данных. Простой xaml:
<sdk:DataGrid Name="dgMain" ItemsSource="{Binding SomeSource}" />
<toolkit:Accordion>
<toolkit:AccordionItem Header="Details">
<sdk:DataGrid ItemsSource="{Binding ElementName=dgMain, Path=SelectedItem.Children}"/>
</toolkit:AccordionItem>
</toolkit:Accordion>
У меня для свойства VerticalAlignment второй сетки установлено значение «Растянуть», поэтому она растягивается, поскольку к ней привязаны разные размеры коллекций, но проблема в том, что она растягивается только в пределах размера AccordionItem, поэтому, если я выберу новый элемент в первой сетке у которого больше «Дочерних элементов», тогда мне нужно прокрутить вторую сетку, потому что AccordionItem не изменился.
Область AccordionItem изменится только тогда, когда я снова сжимаю и расширяю ее. Установка VerticalContentAlignment на «Stretch» для элемента аккордеона не работает. Я предполагаю, потому что это срабатывает только при первом расширении.
Кто-нибудь знает, что еще я могу попробовать, или я что-то упускаю. Я бы предпочел придерживаться решения xaml, чтобы оставаться дружелюбным к MVVM, но рад все слышать.