2012-05-22 3 views
2

Моя программа C# позволяет пользователю выбрать, какой из нескольких одинаково названных принтеров они хотят печатать некоторые ярлыки. Стандартный PrintDialog довольно узкий по сравнению с именами принтеров, которые он должен отображать, поэтому вы не можете видеть полные имена всех принтеров в раскрывающемся списке. Есть ли способ увеличить ширину формы PrintDialog? Поскольку это диалоговое окно, оно не изменяется во время выполнения. Я бы предпочел не изобретать колесо и придумать совершенно новую форму, чтобы перечислить установленные принтеры, маленькие, как кажется.Как изменить размер формы PrintDialog

+0

Единственное, что делает PrintDialog, это выбрать принтер? Я имею в виду, никаких других вариантов не требуется, размер бумаги, копии и т. Д. –

+0

@ K'Leg Это единственное, что я использую для этого. Я отключил все другие параметры, которые я могу (размер бумаги, выбор печати и т. Д.). Я знаю, что создать пользовательскую форму было бы довольно просто, но это похоже на общий сценарий, и мне трудно поверить, что со всеми, кто использует сетевые принтеры, у которых, похоже, есть более длинные имена, нет встроенных элементов управления для размещения имен принтеров «определенного размера». –

+0

Имена принтеров в моей сети не долго. Это длинный снимок, но можете ли вы уменьшить размер имен принтеров? –

ответ

1

Вы, очевидно, знаете, как создать свою собственную форму, чтобы я не предлагал это вам.
Но как насчет добавления выпадающего списка, где-то рядом с вашей кнопкой печати, и заполнить его так.
Я предлагаю создать только combobox dropdwon, так что пользователи не могут добавить свое собственное имя принтера и F *** все это.

foreach (string s in PrinterSettings.InstalledPrinters) 
{ 
    comboBox1.Items.Add(s); 
}