Форум программистов, компьютерный форум, киберфорум
C#: WPF, UWP и Silverlight
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для firnen_dragon
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407

Сохранение настроек печати

15.02.2024, 14:35. Показов 2653. Ответов 26

Студворк — интернет-сервис помощи студентам
Как я понял для сохранения настроек печати мне нужен класс PrintTicket из PrintDialog. Но как бы я не сохранял PrintTicket при загрузке я вижу те же настройки что и были по умаолчанию подскажите пожалуйста как правильно загружать и сохранять настройки печати в wpf
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
if (string.IsNullOrEmpty(template))
{
    if (dlg.ShowDialog() == true)
    {
        img.Source = bmi;
 
        for (int i = 0; i < dlg.PrintTicket.CopyCount; i++)
        {
            dlg.PrintVisual(img, "Print Image");
        }
 
        if (_dialogService.ShowQuestionMessage("Сохранить текущий шаблон?", ""))
            using (FileStream fl = new FileStream(FileManager.PrintTemplatesFolderPath + "\\" + dlg.PrintTicket.PageMediaSize.Width + "x" + dlg.PrintTicket.PageMediaSize.Height + "_" + "template.xml", FileMode.OpenOrCreate))
                dlg.PrintTicket.SaveTo(fl);
    }
}
else
{
    string filepath = FileManager.PrintTemplatesFolderPath + "\\" + template;
 
    using (FileStream fl = new FileStream(filepath, FileMode.OpenOrCreate))
        dlg.PrintTicket = new PrintTicket(fl);
 
    if (dlg.ShowDialog() == true)
    {
        img.Source = bmi;
 
        for (int i = 0; i < dlg.PrintTicket.CopyCount; i++)
        {
            dlg.PrintVisual(img, "Print Image");
        }
 
    }
}
Пробовал еще
- dlg.PrintQueue.UserPrintTicket
- dlg.PrintQueue.DefaultPrintTicket

Ничего не меняется
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.02.2024, 14:35
Ответы с готовыми решениями:

Почему не работает сохранение настроек
3ч уже никак не пойму почему не работает сохранение настроек через Settings. Началось все с того, что днем я сделал сохранение...

Как правильно реализовать сохранение и восстановление настроек в MVVM?
Тема создана разделением родительской: https://www.cyberforum.ru/wpf-silverlight/thread2893907-page7.html#post15911402 Элд Хасп, Я...

Сохранение файла в тот же путь, сохранение настроек блокнота
Ребята, два вопроса. Как сделать сохранение из блокнота в то же самое место, типо в тот же файл, тоесть не &quot;сохранить как&quot; а...

26
 Аватар для xellan24rus
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
27.02.2024, 16:28
Студворк — интернет-сервис помощи студентам
firnen_dragon, вроде как все сохраняется. Клацал на разные настройки
1
 Аватар для firnen_dragon
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
27.02.2024, 16:29  [ТС]
xellan24rus, Да, подходит, только проблема была в том, что это в wpf не работало, DocumentProperties возвращал -1 при передаче туда дескриптора окна
0
 Аватар для xellan24rus
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
27.02.2024, 16:33
firnen_dragon, это не суть важно уже так как это и не должно работать в wpf....
Отсюда я получаю настройки. В wpf нету PrinterSettings...
C#
1
2
3
4
5
if (printDialog.ShowDialog() == DialogResult.OK)
{
 
    return printDialog.PrinterSettings;
}
Если подходит, то я оформлю решение в нормальный вид. Скину реализацию позже, и wpf это не будет проблемой для использования
1
 Аватар для firnen_dragon
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
27.02.2024, 17:44  [ТС]
Цитата Сообщение от xellan24rus Посмотреть сообщение
Если подходит, то я оформлю решение в нормальный вид. Скину реализацию позже, и wpf это не будет проблемой для использования
Спасибо, было бы не плохо
1
 Аватар для xellan24rus
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
27.02.2024, 18:19
Лучший ответ Сообщение было отмечено firnen_dragon как решение

Решение

firnen_dragon, готово. Оформил библиотекой решение, можно использовать в Net Framework проектах.
Но я сделал пример использования в проекте Wpf Net Core 6, не забудьте заглянуть в Менеджер Nuget чтобы посмотреть что за пакет я использовал, можно было без него, но тогда пришлось бы сильно костылить. И он нужен только для решений Net Core. В проектах Net FrameWork его можно не ставить ибо System.Drawing.Printer там есть по умолчанию.
И да PrintDialog из wpf мы использовать для вашей задачи мы не можем, поэтому через обходной путь используем средства Windows Form со всеми текущими win api которые позволяют манипулировать PrintSetting
DevPrinter.rar
2
 Аватар для firnen_dragon
25 / 25 / 4
Регистрация: 21.01.2019
Сообщений: 407
28.02.2024, 10:25  [ТС]
xellan24rus, Спасибо огромное
0
 Аватар для xellan24rus
364 / 296 / 55
Регистрация: 08.04.2020
Сообщений: 1,175
28.02.2024, 10:29
firnen_dragon, рад что смог помочь)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.02.2024, 10:29

Сохранение настроек
Нужно чтобы настройки в combobox'ax сохранялись, а не чистились после перехода в другой раздел.

Сохранение настроек
Добрый день! Подскажите как можно сохранить настройки окна, меню и т.д. и, что бы при запуске программы они востанавливались

Сохранение настроек ПО
Привет. Вот такой вопрос. Все настройки ПО я сохраняю с помощью Properties.Settings.Default.Save(). При этом создается файл app.config в...

Сохранение настроек
я сохраняю настройки в Settings.Settings и есть пара вопросов: 1. после того как я устанавливаю нужное значение в диалоговом окне ...

Сохранение настроек программы
Как обычно сохраняют настройки программы(к примеру размеры формы) с помощью файла settings или с помощью xml-сериализации


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
27
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть не большие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru