在Silverlight中自动调整列表框

时间:2011-07-07 18:04:49

标签: silverlight xaml

我正在做的事似乎应该很容易,但我没有得到我想要的结果。也许有人可以给我一个暗示......

假设我有一个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" />

0 个答案:

没有答案