Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > создать шаблон для System.Windows.Documents.List


Автор: RastaDja 26.11.2012, 08:40
Доброго времени суток!
Использую список, в печатаемом документе.
Код

<FlowDocumentScrollViewer ContextMenu="{x:Null}" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
      
    <FlowDocument FontSize="12" FontFamily="Verdana">  
               <BlockUIContainer>
              <ListBox ScrollViewer.CanContentScroll="False" Name="list" BorderThickness="0" 
                        VerticalContentAlignment="Stretch"  HorizontalContentAlignment="Stretch" 
                        ScrollViewer.VerticalScrollBarVisibility="Auto"  ScrollViewer.HorizontalScrollBarVisibility="Disabled" 
                        ItemTemplate="{DynamicResource ListTmplrs}">
                  <ListBox.Resources>
                      <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}"/>
                      <SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black"/>
                      <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="#00FFFFFF"/>
                                
                      <DataTemplate x:Key="ListTmplrs">
                        <Expander Background="White" BorderThickness="0,0,0,1" Margin="2" BorderBrush="#FFB4B4B4" FontFamily="Calibri" Style="{DynamicResource StretchExpanderStyle}">
                            <Expander.Header>
                                <Grid HorizontalAlignment="Stretch">
                                  <Grid.RowDefinitions>
                                      <RowDefinition/>
                                      <RowDefinition/>
                                  </Grid.RowDefinitions>
                                  <Grid.ColumnDefinitions>
                                      <ColumnDefinition/>
                                      <ColumnDefinition/>
                                      <ColumnDefinition/>
                                      <ColumnDefinition/>
                                  </Grid.ColumnDefinitions>
                                        
                                  <TextBlock Grid.Row="0" Grid.Column="0" Padding="0,0,5,0" FontSize="14" Text="{Binding time}"/>
                                  <TextBlock Grid.Row="0" Grid.Column="1" Padding="0,0,5,0" FontSize="14" Text="{Binding s0}"/>
                                  <TextBlock Grid.Row="0" Grid.Column="2" Padding="0,0,5,0" FontSize="14" Text="{Binding s1}"/>
                                  <TextBlock Grid.Row="0" Grid.Column="3" Padding="0,0,5,0" FontSize="14" Text="{Binding s2 }"/>
                                </Grid>
                            </Expander.Header>
                            <Expander.Content>
                                <DockPanel Margin="4">
                                   
                                    <Border Background="White">
                                        <TextBlock Grid.Row="0" Grid.Column="3" Padding="0,0,5,0" FontSize="14" Text="Текст"/>
                                    </Border>
                                </DockPanel>
                            </Expander.Content>
                        </Expander>
                      </DataTemplate>
                  </ListBox.Resources>
              </ListBox>
        </BlockUIContainer>
    </FlowDocument>
</FlowDocumentScrollViewer>


Так, как с таким списком возникают проблемы при печати, придется использовать System.Windows.Documents.List, который печатает содержимое прекрасно. Вот, только, как создать шаблон для него, непонятно.
Помогите решить проблему. Спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)