Получить лотки для принтеров и источник бумаги по выбранному имени принтера.C#

Место общения программистов C#
Ответить
Anonymous
 Получить лотки для принтеров и источник бумаги по выбранному имени принтера.

Сообщение Anonymous »

У меня есть ListBox, в котором отображаются все принтеры, которые я могу найти в клиенте Windows.

Код: Выделить всё

List lstPrinters = new List();

foreach (var item in PrinterSettings.InstalledPrinters)
{
MyPrinterClass d = new MyPrinterClass();
d.printerName = item.ToString();

lstPrinters.Add(d);
}
Если нужен мой класс

Код: Выделить всё

public class MyPrinterClass
{
public string imageSource { get; set; }
public Bitmap imageBmp { get; set; }
public string printerName { get; set; }
public List
 paperSources { get; set; }
}
Я пытаюсь получить лотки и, если возможно (с помощью принтера), содержащий PaperSource. Принтеры должны быть установлены на клиенте (это условие моего решения). Таким образом, Windows должна знать подробную информацию о лотках и paperSource.
Что я пробовал:
С помощью PrinterSettings.InstalledPrinters я могу получить имена принтеров, но, похоже, нет доступа к другим данным.
С помощью PrinterSettings.PaperSources я могу получить PaperSources, но я исхожу из PrintDocument. Таким образом, данные не связаны с выбранным установленным принтером из моего списка.
Что я ожидал:
Класс принтера, похожий на универсальное решение для Windows, представленное в руководствах MS.
Что я мог бы сделать:
Я мог бы создать универсальное решение для Windows и передать данные, но это мой наименее любимый вариант.

Подробнее здесь: https://stackoverflow.com/questions/781 ... rintername
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»