public PriceLoadDlg(string filePath) { this.Build(); TabName = "Загрузка прайса (Шаг 1)"; try { using (var fs = new FileStream(filePath, FileMode.Open, FileAccess.Read)) { wb = new XSSFWorkbook(fs); } }catch (IOException ex) { if (ex.HResult == -2147024864) { MessageDialogWorks.RunErrorDialog("Указанный файл уже открыт в другом приложении. Оно заблокировало доступ к файлу."); FailInitialize = true; return; } throw ex; } var sheets = new List <string>(); for (int s = 0; s < wb.NumberOfSheets; s++) { sheets.Add(wb.GetSheetName(s)); } comboSheet.ItemsList = sheets; ytreeviewSetColumns.EnableGridLines = Gtk.TreeViewGridLines.Both; ytreeviewSetColumns.HeadersClickable = true; SetColumnTypeMenu = GtkMenuHelper.GenerateMenuFromEnum <ReadingXLSRow.ColumnType>(OnSetColumnHeaderMenuSelected); notebook1.ShowTabs = false; //Вкладка второго экрана ytreeviewParsing.ColumnsConfig = ColumnsConfigFactory.Create <ReadingXLSRow>() .AddColumn("Статус").Resizable().AddTextRenderer(x => x.Status.GetEnumTitle()) .AddSetter((w, x) => w.Foreground = GetColorByStatus(x.Status)) .AddColumn("Тип").Resizable().SetDataProperty(node => node.DispalyType) .AddColumn("Диаметр").Resizable().SetDataProperty(node => node.DispalyDiameter) .AddColumn("Давление").Resizable().SetDataProperty(node => node.DispalyPressure) .AddColumn("Cоединения").Resizable().SetDataProperty(node => node.DispalyConnection) .AddColumn("Материал").Resizable().SetDataProperty(node => node.DispalyMaterial) .AddColumn("Артикул").Resizable().SetDataProperty(node => node.DispalyModel) .AddColumn("Цена").Resizable().AddNumericRenderer(x => x.Price) .AddSetter((w, x) => w.Background = x.Price.HasValue ? "white" : "red") .AddColumn("DN(XLS)").Resizable().AddTextRenderer(x => x.DNText).Background("White Smoke") .AddColumn("PN(XLS)").Resizable().AddTextRenderer(x => x.PNText).Background("White Smoke") .AddColumn("Модель(XLS)").Resizable().AddTextRenderer(x => x.ModelText).Background("White Smoke") .AddColumn("Цена(XLS)").Resizable().AddTextRenderer(x => x.PriceText).Background("White Smoke") .Finish(); ytreeviewParsing.EnableGridLines = TreeViewGridLines.Both; ytreeviewParsing.Selection.Mode = SelectionMode.Multiple; ytreeviewParsing.Selection.Changed += YtreeviewParsing_Selection_Changed; comboCurrency.ItemsEnum = typeof(PriceСurrency); }
public UpdatePricesDlg() { logger.Info("Выбор файла для обновления цен..."); if (SelectFile()) { FailInitialize = true; return; } this.Build(); TabName = "Расположение колонок (Шаг 1)"; try { using (var fs = new FileStream(filePath, FileMode.Open, FileAccess.Read)) { wb = new XSSFWorkbook(fs); } } catch (IOException ex) { if (ex.HResult == -2147024864) { MessageDialogWorks.RunErrorDialog("Указанный файл уже открыт в другом приложении. Оно заблокировало доступ к файлу."); FailInitialize = true; return; } throw ex; } comboCurrency.ItemsEnum = typeof(PriceСurrency); var sheets = new List <string>(); for (int s = 0; s < wb.NumberOfSheets; s++) { sheets.Add(wb.GetSheetName(s)); } comboSheet.ItemsList = sheets; ytreeviewSetColumns.EnableGridLines = Gtk.TreeViewGridLines.Both; ytreeviewSetColumns.HeadersClickable = true; SetColumnTypeMenu = GtkMenuHelper.GenerateMenuFromEnum <UpdatingXLSRow.ColumnType>(OnSetColumnHeaderMenuSelected); notebook1.ShowTabs = false; ytreeviewParsing.EnableGridLines = TreeViewGridLines.Both; ytreeviewParsing.Selection.Mode = SelectionMode.Multiple; ytreeviewParsing.Selection.Changed += YtreeviewParsing_Selection_Changed; comboProvider.SetRenderTextFunc <Provider>(x => x.Name); }