Привязка WPF к списку установленных принтеров

Как привязать к списку системы.Рисунок.Печатающий.Свойство printersettings.InstalledPrinters, который является статическим StringCollection, в WPF XAML. Например, использовать его в поле со списком, чтобы пользователь мог выбрать принтер для использования.

2 ответов


добавить пространство имен System.Рисунок.Печать кода XAML:

xmlns:Printing="clr-namespace:System.Drawing.Printing;assembly=System.Drawing"

затем добавьте поле со списком, чтобы показать список принтеров, установленных в системе:

<ComboBox Name="cmbPrinterSelection" Width="300" ItemsSource="{x:Static Printing:PrinterSettings.InstalledPrinters}" SelectionChanged="cmbPrinterSelection_SelectionChanged" />

надеюсь, это сэкономит кому-то немного времени.


добавить ссылку System.Printing сборка.

using System.Printing;
using System.Linq;

// ...

var printers = new LocalPrintServer().GetPrintQueues(pq => pq.Name);

https://stackoverflow.com/a/37156518/991267