2011-03-23 91 views
0

我有一個使用AutoCompleteBox的Silverlight應用程序。此自動完成框定義如下:控制Silverlight自動完成框中的垂直滾動條

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

我希望下拉列表中的垂直滾動條始終可見。這樣我可以適當地調整我的項目模板。我的問題是,我如何總是在自動完成框的下拉框中顯示垂直滾動條?

謝謝!

回答

0

您需要在包含ScrollViewer上設置VerticalScrollbarVisibility。您可以通過在AutoCompleteBoxStyle內創建一個隱含的Style來完成此操作,如下所示。否則,您需要爲AutoCompleteBox創建樣式,並直接在ScrollViewer上設置Property或Style

<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>