控制silverlight自动完成框中的垂直滚动条

时间:2011-03-23 14:13:21

标签: silverlight autocompletebox

我有一个使用AutoCompleteBox的Silverlight应用程序。此AutoCompleteBox定义如下:

  <sdk:AutoCompleteBox x:Name="myAutoCompleteBox" HorizontalAlignment="Stretch" 
    MaxHeight="240" MaxDropDownHeight="240" IsTextCompletionEnabled="False"    
    MinimumPrefixLength="4" MinimumPopulateDelay="100"                 
    ItemsSource="{Binding MyElements}" ItemTemplate="{StaticResource itemTemplate}" />

我希望下拉列表中的垂直滚动条始终可见。这样我可以适当地调整项目模板的大小。我的问题是,如何在自动完成框的下拉框中始终显示垂直滚动条?

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要在包含VerticalScrollbarVisibility的地方设置ScrollViewer。您可以通过在Style AutoCompleteBox中创建隐式Style来完成此操作,如下所示。否则,您需要为AutoCompleteBox创建一个样式,并直接在Style上设置属性或ScrollViewer

<sdk:AutoCompleteBox x:Name="myAutoCompleteBox" HorizontalAlignment="Stretch" 
    MaxHeight="240" MaxDropDownHeight="240" IsTextCompletionEnabled="False"    
    MinimumPrefixLength="4" MinimumPopulateDelay="100"                 
    ItemsSource="{Binding MyElements}" ItemTemplate="{StaticResource itemTemplate}">
    <sdk:AutoCompleteBox.Resources>
        <Style TargetType="ScrollViewer">
            <Setter Property="VerticalScrollBarVisibility" Value="Visible"/>
        </Style>
     </sdk:AutoCompleteBox.Resources>
</sdk:AutoCompleteBox>