Как сделать заголовок списка в Silverlight - PullRequest
3 голосов
/ 10 ноября 2010

У меня есть проект Silverlight Sketch, и я использую многоколонный список для имитации сетки данных.

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

Все работает отлично, за исключением того, что я не представляю, как сделать красивый заголовок для моего списка.

1 Ответ

2 голосов
/ 18 июля 2011

Вы уже перезаписали шаблон элемента управления, поэтому просто поместите текстовый блок с хорошим стилем над элементамиpresenter items

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...