曲线silverlight列表框控件的边框

时间:2010-03-05 08:25:11

标签: c# silverlight

曲线silverlight列表框控件的边框:

我只想弯曲silverlight列表框边框的末端。

我正在做什么事情,因为我无法获得边界曲线:

  <Style TargetType="ListBox" x:Key="listboxStyle">
    <Setter Property="Padding" Value="1"/>
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="HorizontalContentAlignment" Value="Left" />
    <Setter Property="VerticalContentAlignment" Value="Top" />
    <Setter Property="IsTabStop" Value="False" />
    <Setter Property="BorderThickness" Value="0" />
    <Setter Property="TabNavigation" Value="Once" />
    <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
    <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="ListBox">
          <Grid Background="White">
              <Border Background="White" BorderThickness="0" CornerRadius="10">
                <ScrollViewer Background="White" x:Name="ScrollViewerElement" Padding="{TemplateBinding Padding}">
                  <ItemsPresenter />
                </ScrollViewer>
              </Border>
          </Grid>
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>

3 个答案:

答案 0 :(得分:5)

好的,我完成了它,并且没有必要设置列表框控件的样式。

    <Border BorderBrush="White" BorderThickness="0" CornerRadius="5" Background="White" >
       <ListBox x:Name="lstEnities" BorderThickness="0" Margin="5" Grid.Row="0"></ListBox>
    </Border>

答案 1 :(得分:0)

请检查如何编辑ListBox(或任何WPF控件)的控件模板 - http://msdn.microsoft.com/en-us/library/ms754242.aspx 您可以在controltemplate内的Border上提供CornerRadius。

答案 2 :(得分:0)

检查此部分 使用Template和ControlTemplate最小化模板ListBox和ListBoxItem:

该博客的

http://blogs.msdn.com/delay/archive/2008/03/05/lb-sv-faq-examples-notes-tips-and-more-for-silverlight-2-beta-1-s-listbox-and-scrollviewer-controls.aspx

该博客的作者是列表框控件的作者(我记得)。