/// <summary> /// /// head.resolution.in_dpi:203 /// zpl.label_length:590 /// odometer.label_dot_length:590 /// media.width_sense.in_mm:104.1 /// media.width_sense.in_cm:10.41 /// media.width_sense.in_dots:832 /// media.width_sense.in_inches:4.099 /// sensor.width.cur:209 /// sensor.width.in_dots:832 /// /// </summary> /// <param name="c"></param> private static void DisplaySettings(Connection c) { ZebraPrinter genericPrinter = ZebraPrinterFactory.GetInstance(c); ZebraPrinterLinkOs linkOsPrinter = ZebraPrinterFactory.CreateLinkOsPrinter(genericPrinter); if (linkOsPrinter != null) { Console.WriteLine("Available Settings for myDevice"); HashSet <string> availableSettings = linkOsPrinter.GetAvailableSettings(); foreach (string setting in availableSettings) { Console.WriteLine($"{setting}: Range = ({linkOsPrinter.GetSettingRange(setting)})"); } Console.WriteLine("\nCurrent Setting Values for myDevice"); Dictionary <string, string> allSettingValues = linkOsPrinter.GetAllSettingValues(); foreach (string settingName in allSettingValues.Keys) { Console.WriteLine($"{settingName}:{allSettingValues[settingName]}"); } string darknessSettingId = "print.tone"; string newDarknessValue = "10.0"; if (availableSettings.Contains(darknessSettingId) && linkOsPrinter.IsSettingValid(darknessSettingId, newDarknessValue) && linkOsPrinter.IsSettingReadOnly(darknessSettingId) == false) { linkOsPrinter.SetSetting(darknessSettingId, newDarknessValue); } Console.WriteLine($"\nNew {darknessSettingId} Value = {linkOsPrinter.GetSettingValue(darknessSettingId)}"); } }
private void UpdateSettingsTable() { Connection connection = null; try { connection = connectionSelector.GetConnection(); connection.Open(); ZebraPrinter genericPrinter = ZebraPrinterFactory.GetInstance(connection); ZebraPrinterLinkOs printer = ZebraPrinterFactory.CreateLinkOsPrinter(genericPrinter); if (printer != null) { Dictionary <string, Sdk.Settings.Setting> settings = printer.GetAllSettings(); Application.Current.Dispatcher.Invoke(() => { if (settings != null) { foreach (string key in settings.Keys) { viewModel.Settings.Add(new Setting { Key = key, Value = settings[key].Value, Range = printer.GetSettingRange(key) }); } } else { MessageBoxCreator.ShowError("Error reading settings", "Settings Error"); } printerSettingsGrid.UnselectAll(); }); } else { MessageBoxCreator.ShowError("Connected printer does not support settings", "Connection Error"); } } catch (ConnectionException e) { MessageBoxCreator.ShowError(e.Message, "Connection Error"); } catch (ZebraPrinterLanguageUnknownException e) { MessageBoxCreator.ShowError(e.Message, "Connection Error"); } catch (SettingsException e) { MessageBoxCreator.ShowError(e.Message, "Settings Error"); } catch (Exception e) { MessageBoxCreator.ShowError(e.Message, "Save Settings Error"); } finally { SetButtonStates(true); try { if (connection != null) { connection.Close(); } } catch (ConnectionException) { } } }
private void UpdateSettingsTable(Connection connection, string printerLanguage) { ZebraPrinter printer = ZebraPrinterFactory.GetInstance(connection); ZebraPrinterLinkOs linkOsPrinter = ZebraPrinterFactory.CreateLinkOsPrinter(printer); Dictionary <string, Setting> settings = linkOsPrinter.GetAllSettings(); if (settings.ContainsKey(DeviceLanguagesSgd)) { settings[DeviceLanguagesSgd].Value = printerLanguage; } if (settings != null) { Device.BeginInvokeOnMainThread(() => { foreach (string key in settings.Keys) { Entry entry = new Entry { Text = settings[key].Value, }; entry.TextChanged += (object s, TextChangedEventArgs e) => { if (key != null) { if (modifiedSettings.ContainsKey(key)) { modifiedSettings[key] = e.NewTextValue; } else { modifiedSettings.Add(key, e.NewTextValue); } } }; SettingsTableSection.Add(new ViewCell { View = new StackLayout { Padding = new Thickness(15), HorizontalOptions = LayoutOptions.FillAndExpand, Children = { new Label { Text = key, FontSize = Device.GetNamedSize(NamedSize.Default, typeof(Label)), FontAttributes = FontAttributes.Bold }, entry, new Label { Text = $"Type: {linkOsPrinter.GetSettingType(key)}, Range: {linkOsPrinter.GetSettingRange(key)}" } } } }); } }); } else { Device.BeginInvokeOnMainThread(async() => { await DisplayAlert("Settings Error", "Error reading settings", "OK"); }); } }