posts - 315, comments - 268, trackbacks - 15

My Links

News

View Pietro Libro's profile on LinkedIn

DomusDotNet
   DomusDotNet

Pietro Libro

Tag Cloud

Article Categories

Archives

Post Categories

Blogs amici

Links

LocalPrintServer

Studiavo le proprietà di questa classe,  la quale rappresenta, cito la documentazione MSDN : "il server di stampa locale (il computer sul quale l'applicazione è in esecuzione)" . Quest'oggetto molto interessante, permette la gestione delle code di stampa oltre a poter ottenere l'insieme delle stampanti locali con relative proprietà. Per questo semplice compito sono sufficienti poche righe di codice :

1 private void Window_Loaded(object sender, RoutedEventArgs e) 2 { 3 LocalPrintServer ps = new LocalPrintServer(); 4 5 PrintQueueCollection printCollection = ps.GetPrintQueues(); 6 7 IEnumerable<PrintQueue> pq = from p in printCollection 8 orderby p.Name 9 select p; 10 11 lstPrinters.ItemsSource = pq; 12 }

Se poi uniamo il tutto a del semplice codice XAML:

1 <Window.Resources> 2 <Style x:Key="StretchedListBoxItem" TargetType="{x:Type ListBoxItem}"> 3 <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 4 </Style> 5 </Window.Resources> 6 <Grid> 7 <ListBox Name="lstPrinters" Margin="24,24,24,17" ItemContainerStyle="{StaticResource StretchedListBoxItem}"> 8 <ListBox.ItemTemplate> 9 <DataTemplate> 10 <Border Margin="1,1,1,1" BorderThickness="1" CornerRadius="6,6,6,6" BorderBrush="Blue"> 11 <Grid HorizontalAlignment="Stretch"> 12 <Grid.ColumnDefinitions> 13 <ColumnDefinition Width="80" /> 14 <ColumnDefinition Width="*" /> 15 </Grid.ColumnDefinitions> 16 <Grid.RowDefinitions> 17 <RowDefinition Height="40" /> 18 <RowDefinition Height="40" /> 19 </Grid.RowDefinitions> 20 <Image Grid.RowSpan="2" Margin="6,9,7,9" Name="imgPrint" Stretch="Fill" Source="Printer.png"/> 21 <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding FullName}" Margin="8,13,10,0"/> 22 <TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding Description}" Margin="8,4,10,0"/> 23 </Grid> 24 </Border> 25 </DataTemplate> 26 </ListBox.ItemTemplate> 27 28 </ListBox> 29 30 </Grid>

Possiamo ottenere un gradevole effetto di presentazione:

image

Penso  che la classe meriti uno studio approfondito date le potenzialità offerte.

Technorati Tag:

Print | posted on venerdì 11 luglio 2008 16:32 | Filed Under [ WPF ]

Comments have been closed on this topic.

Powered by:
Powered By Subtext Powered By ASP.NET