автоматическое изменение размера списка в Silverlight - PullRequest
0 голосов
/ 07 июля 2011

Я делаю то, что кажется довольно простым, но я не получаю желаемых результатов.Может быть, кто-то может дать мне подсказку ...

Предположим, у меня есть пользовательский элемент управления Silverlight.У меня есть Сетка и 2 определения строк.Верхняя строка будет отображать результаты поиска в ListBox.У меня есть шаблон элемента, назначенный списку.

Нижний ряд содержит некоторые элементы управления.

Что я хочу:

  • Нижний ряд должен иметь фиксированную высоту, и я не хочу, чтобы он прокручивался за пределы экрана.
  • Верхстрока (и окно списка) должны «сжиматься» по вертикали, чтобы она всегда использовала все доступное пространство минус пространство, используемое нижней строкой.
  • Таким образом, если пользователь изменяет размер своего окна браузера, окно списка будетрасти и уменьшаться по вертикали.
  • Если список не может отображать все свои результаты на одном экране, я хочу, чтобы он отображал полосу прокрутки.

Вот что у меня так далеко:

  • Список и строка будут динамически увеличиваться и уменьшаться.
  • Однако, если их слишком много для отображения списка, он просто увеличивается по вертикали.Это вытолкнет мою нижнюю строку сетки прямо с экрана.

Вот мои определения строк:


        <Grid.RowDefinitions>
            <RowDefinition MinHeight="350" Height="*"/>
            <RowDefinition Height="175"/>
        </Grid.RowDefinitions>

Вот мой список


<ListBox 
    ScrollViewer.VerticalScrollBarVisibility="Auto" 
    SelectionMode="Single" 
    SelectedItem="{Binding SelectedItem, Mode=TwoWay}" 
    ItemsSource="{Binding View}" 
    ItemTemplate="{StaticResource SearchResultItemTemplate}" 
    Grid.Row="0" />

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...