2010-11-10 57 views
3

我有Silverlight Sketch项目,我使用muliticolumn listview来模拟数据网格。如何在Silverlight中创建列表框标题

<Style x:Key="ListBox-Sketch" TargetType="ListBox"> 
    <Setter Property="Padding" Value="1"/> 
    <Setter Property="Foreground" Value="#FF000000"/> 
    <Setter Property="HorizontalContentAlignment" Value="Left"/> 
    <Setter Property="VerticalContentAlignment" Value="Top"/> 
    <Setter Property="IsTabStop" Value="False"/> 
    <Setter Property="BorderThickness" Value="1"/> 
    <Setter Property="TabNavigation" Value="Once"/> 
    <Setter Property="ItemContainerStyle" Value="{StaticResource ListBoxItem-Sketch}"/> 
    <Setter Property="Background" Value="Transparent"/> 
    <Setter Property="Template"> 
     <Setter.Value> 
      <ControlTemplate TargetType="ListBox"> 
       <Grid> 
        <ScrollViewer x:Name="ScrollViewer" Style="{StaticResource ScrollViewer-Sketch2}" 
         ScrollViewer.HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}" 
         ScrollViewer.VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}" 
         BorderBrush="{TemplateBinding BorderBrush}" 
         BorderThickness="0" 
         Padding="{TemplateBinding Padding}" 
         Background="{TemplateBinding Background}" 
         Foreground="{TemplateBinding Foreground}"> 
         <ItemsPresenter/> 
        </ScrollViewer> 
       </Grid> 
      </ControlTemplate> 
     </Setter.Value> 
    </Setter> 
    <Setter Property="BorderBrush" Value="{StaticResource BaseBorder-Sketch}"/> 
    <Setter Property="ItemTemplate"> 
     <Setter.Value> 
      <DataTemplate> 
       <Grid> 
        <Grid.ColumnDefinitions> 
         <ColumnDefinition Width="20"></ColumnDefinition> 
         <ColumnDefinition Width="300"></ColumnDefinition> 
         <ColumnDefinition Width="180"></ColumnDefinition> 
        </Grid.ColumnDefinitions> 
        <TextBlock Grid.Column="0" FontFamily="{StaticResource FontFamily-Sketch}" FontSize="13" Text="{Binding Sifra}" TextWrapping="Wrap" Margin="2"/> 
        <TextBlock Grid.Column="1" FontFamily="{StaticResource FontFamily-Sketch}" FontSize="13" Text="{Binding Naziv}" TextWrapping="Wrap" Margin="2"/> 
        <TextBlock Grid.Column="2" FontFamily="{StaticResource FontFamily-Sketch}" FontSize="13" Text="{Binding Klasifikacija}" TextWrapping="Wrap" Margin="2"/> 
       </Grid> 
      </DataTemplate> 
     </Setter.Value> 
    </Setter> 
</Style> 

一切工作正常,但我没有想法如何使我的列表框很好看头。

+0

有没有你不使用DataGrid的理由之上? http://blogs.msdn.com/b/scmorris/archive/2008/03/21/using-the-silverlight-datagrid.aspx – 2010-11-10 15:49:15

+0

我只是喜欢listbox更好,但你是正确的datagird是这个正确的控制 – zidane 2010-11-28 22:26:35

回答

2

您已经覆盖控制模板,只是把一个很好的风格textbblock的itemspresenter