private void button1_Click(object sender, EventArgs e) { if (textBoxId.Text != "") { Value1 = textBoxId.Text; ZebraCardPrinter zebraCardPrinter = null; Connection connection = null; String usbAdress = null; try { foreach (DiscoveredPrinter usbPrinter in UsbDiscoverer.GetZebraUsbPrinters(new ZebraCardPrinterFilter())) { usbAdress = usbPrinter.Address; } connection = new UsbConnection(usbAdress); connection.Open(); zebraCardPrinter = ZebraCardPrinterFactory.GetInstance(connection); ZebraTemplate zebraCardTemplate = new ZebraCardTemplate(zebraCardPrinter); //string templateData = GetTemplateData(); List <string> templateFields = zebraCardTemplate.GetTemplateDataFields(Template); Dictionary <string, string> fieldData = PopulateTemplateFieldData(templateFields); // Generate template job TemplateJob templateJob = zebraCardTemplate.GenerateTemplateDataJob(Template, fieldData); // Send job int jobId = zebraCardPrinter.PrintTemplate(1, templateJob); // Poll job status JobStatusInfo jobStatus = PollJobStatus(jobId, zebraCardPrinter); //labelStatus.Text = "Impression OK"; //Console.WriteLine($"Job {jobId} completed with status '{jobStatus.PrintStatus}'."); } catch (Exception ev) { labelStatus.Text = "Erreur d'impression : " + ev.Message; //Console.WriteLine($"Error printing template: {ev.Message}"); } finally { CloseQuietly(connection, zebraCardPrinter); } } else { MessageBox.Show("Pas de valeur"); } }
private List <String> GetTemplateVariables(string selectedTemplate) { List <string> templateVariables = null; ZebraCardPrinter zebraCardPrinter = null; try { connection.Open(); zebraCardPrinter = ZebraCardPrinterFactory.GetInstance(connection); ZebraCardTemplate zebraCardTemplate = new ZebraCardTemplate(zebraCardPrinter); zebraCardTemplate.SetTemplateFileDirectory(Properties.Settings.Default.TemplateFileDirectory); templateVariables = zebraCardTemplate.GetTemplateFields(selectedTemplate + ".xml"); } catch (Exception error) { errorMessage = $"Connection Error: {error.Message}"; } finally { ConnectionHelper.CleanUpQuietly(zebraCardPrinter, connection); } return(templateVariables); }
private void PrintTemplate(string selectedTemplate) { ZebraCardPrinter zebraCardPrinter = null; try { int quantity = 0; Application.Current.Dispatcher.Invoke(() => { quantity = int.Parse(Quantity_ComboBox.Text); }); connection.Open(); zebraCardPrinter = ZebraCardPrinterFactory.GetInstance(connection); PrinterStatusInfo statusInfo = zebraCardPrinter.GetPrinterStatus(); if (statusInfo.ErrorInfo.Value > 0) { throw new ZebraCardException($"{statusInfo.Status} ({statusInfo.ErrorInfo.Description}). Please correct the issue and try again."); } else if (statusInfo.AlarmInfo.Value > 0) { throw new ZebraCardException($"{statusInfo.Status} ({statusInfo.AlarmInfo.Description}). Please correct the issue and try again."); } else { ZebraCardTemplate zebraCardTemplate = new ZebraCardTemplate(zebraCardPrinter); zebraCardTemplate.SetTemplateFileDirectory(Properties.Settings.Default.TemplateFileDirectory); zebraCardTemplate.SetTemplateImageDirectory(Properties.Settings.Default.TemplateImageDirectory); Dictionary <string, string> templateData = GetTemplateData(); TemplateJob templateJob = zebraCardTemplate.GenerateTemplateJob(selectedTemplate + ".xml", templateData); int jobId = zebraCardPrinter.PrintTemplate(quantity, templateJob); } } catch (Exception error) { MessageBoxHelper.ShowError(error.Message); } finally { ConnectionHelper.CleanUpQuietly(zebraCardPrinter, connection); } }