Я удалил свой предыдущий вопрос, чтобы правильно перефразировать, так как мой предыдущий пост не был ни полезным, ни полным, imo.WPF UserControl Not Displaying
Для ясности: Я использую структуру Prism и соблюдаю строгий шаблон MVVM.
Проблема: Когда я загружаю UserControl
, определенный в некотором модуле, ModuleA
, он не отображается в Shell
зрения. Однако, если я загружу свой UserControl
в пределах ItemsControl
, элементы, которые я определил, появляются, но все они «сплющены вместе».
В ModuleA, у меня есть следующий UserControl:
<UserControl ...
...>
...
<Grid>
... My Content Here ...
</Grid>
</UserControl>
Теперь в моем проекте, я определил Shell
таким образом:
<Window ...
...>
...
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="10"/>
<RowDefinition Height="10"/>
<RowDefinition Height="10"/>
</Grid.RowDefinitions>
<Border Grid.Row="0" .../>
<UserControl Grid.Row="1" prism:RegionManager.RegionName="ModuleARegion"/>
<Border Grid.Row="2" .../>
</Grid>
</Window>
Теперь, в этом случае, все нагрузки, и ModuleA
распознается, но на экране ничего не появляется.
Однако, если я изменю <UserControl Grid.Row="0" prism:RegionManger .../>
к <ItemsControl Grid.Row="0" prism:RegionManager .../>
, я могу видеть содержание я изложил в моем ModuleA
UserControl
, но содержание все "сплющенные вместе.
У кого-нибудь есть идеи, почему это может произойти?
Вы уверены, что '' RowHeight' являются '10' пикселями? возможно, вы должны попробовать что-то другое или 'Auto' или' * 'вместо – bit
Я говорю о RowDefinition * – bit
@bit Да, я просто использовал 10 для этого примера. Это может быть то, что вы хотите. Дело в том, что ничто не отображается в 1-й (0-индексированной) строке. – Bryant