| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 | 
							- using InABox.Wpf;
 
- using System.Collections.Generic;
 
- using System.Drawing.Printing;
 
- using System.Windows;
 
- using System.Windows.Controls;
 
- namespace InABox.WPF
 
- {
 
-     /// <summary>
 
-     ///     Interaction logic for PrinterSelection.xaml
 
-     /// </summary>
 
-     public partial class PrinterSelection : ThemableWindow
 
-     {
 
-         private readonly List<string> printers = new() { "" };
 
-         public PrinterSelection(string value)
 
-         {
 
-             InitializeComponent();
 
-             foreach (string printer in PrinterSettings.InstalledPrinters)
 
-                 printers.Add(printer);
 
-             Combo.ItemsSource = printers;
 
-             Value = Combo.Items.Contains(value) ? value : "";
 
-         }
 
-         public string Value
 
-         {
 
-             get => Combo.SelectedItem.ToString();
 
-             set => Combo.SelectedItem = value;
 
-         }
 
-         private void OK_Click(object sender, RoutedEventArgs e)
 
-         {
 
-             DialogResult = true;
 
-             Close();
 
-         }
 
-         private void Cancel_Click(object sender, RoutedEventArgs e)
 
-         {
 
-             DialogResult = false;
 
-             Close();
 
-         }
 
-         public static bool Execute(ref string value)
 
-         {
 
-             var edit = new PrinterSelection(value);
 
-             if (edit.ShowDialog() == true)
 
-             {
 
-                 value = edit.Value;
 
-                 return true;
 
-             }
 
-             return false;
 
-         }
 
-         private void Combo_SelectionChanged(object sender, SelectionChangedEventArgs e)
 
-         {
 
-             OK.IsEnabled = !string.IsNullOrWhiteSpace(Combo.SelectedValue.ToString());
 
-         }
 
-     }
 
- }
 
 
  |