У меня есть следующая сетка в качестве элемента управления LayoutRoot на моей странице Silverlight:
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="*" />
<RowDefinition Height="30" />
</Grid.RowDefinitions>
Все содержимое второй строки представляет собой сетку данных, заполненную связыванием данных, и общая высота сетки великаможет быть 3000 пикселей.Я понимаю, что, выполняя определения строк таким образом, первая и третья строки должны иметь одинаковую высоту и всегда оставаться видимыми (например, строки верхнего и нижнего колонтитула), в то время как вторая строка должна иметь размер до общей высоты минус 60 для остальныхстрок.Но на самом деле происходит то, что вторая строка занимает все 3000 пикселей, не показывает вертикальную полосу прокрутки и толкает строку нижнего колонтитула за нижнюю часть элемента управления.Это то, что Высота = "Авто" должна делать, я думаю, НЕ то, что должна делать Высота = "*".
Чего мне здесь не хватает?Спасибо!
Обновление : Проблема оказалась в том, что моя сетка была на странице навигации, которая была встроена в главную страницу, потому что я принял шаблон проекта Silverlight по умолчанию.Эта главная страница была разработана, чтобы можно было расширить содержимое, поместив все в StackPanel.Не похоже, что вам действительно нужно установить свойства выравнивания Horiontal и Vertical в Stretch.Когда я заменил StackPanel на сетку и установил высоту строки внутренней сетки на *, он заработал как положено.