public void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { var item = e.AddedItems[0] as ExcelTab; if (item == null) { return; } SelectedHeader = item; WorkSheetEnum en; if (WorkSheetEnum.TryParse(SelectedHeader.Content, out en)) { switch (en) { case WorkSheetEnum.菜色編號對照: FrameContent = new DishSubPage(); break; case WorkSheetEnum.供應商編號對照: FrameContent = new SupplierSubPage(); break; case WorkSheetEnum.食材編號對照: FrameContent = new MaterialSubPage(); break; } } }
private static List <T> DumpContent <T>(WorkSheetEnum type) { var rtnList = new List <T>(); if (string.IsNullOrEmpty(RootSetting.DownloadLocalDir) || string.IsNullOrEmpty(RootSetting.TempFileName)) { return(rtnList); } if (ExcelFullContent == null || ExcelFullContent == new ExcelQueryFactory()) { ExcelFullContent = new ExcelQueryFactory(LocalFileName); } var tabIndex = (int)type; switch (tabIndex) { case (int)WorkSheetEnum.菜色編號對照: ExcelFullContent.AddMapping <Dish>(p => p.C_DishKey, "菜色編號"); ExcelFullContent.AddMapping <Dish>(p => p.C_DishName, "菜色名稱"); rtnList = ExcelFullContent.Worksheet <T>(type.ToString()).ToList(); //var workSheet0 = ExcelFullContent.Worksheet(selectedTab.Content); //rtnList = ConvertCells(workSheet0, WorkSheetEnum.菜色編號對照); //return rtnList; break; case (int)WorkSheetEnum.供應商編號對照: ExcelFullContent.AddMapping <Supplier>(p => p.C_SupplierKey, "供應商統編"); ExcelFullContent.AddMapping <Supplier>(p => p.C_SupplierName, "供應商名稱"); rtnList = ExcelFullContent.Worksheet <T>(type.ToString()).ToList(); //rtnList = ConvertCells(workSheet1, WorkSheetEnum.供應商編號對照); //return rtnList; break; case (int)WorkSheetEnum.食材編號對照: ExcelFullContent.AddMapping <Material>(p => p.C_MaterialKey, "食材編號"); ExcelFullContent.AddMapping <Material>(p => p.C_MaterialName, "食材名稱"); ExcelFullContent.AddMapping <Material>(p => p.C_MaterialCatagory, "食材類別"); rtnList = ExcelFullContent.Worksheet <T>(type.ToString()).ToList(); //rtnList = ConvertCells(workSheet2, WorkSheetEnum.食材編號對照); //return rtnList; break; } return(rtnList); }
private static List <ExcelTab> GetExcelTabList(IEnumerable <string> enumerable) { var rtnList = new List <ExcelTab>(); foreach (var headerContent in enumerable) { WorkSheetEnum key; if (WorkSheetEnum.TryParse(headerContent, out key)) { var newItem = new ExcelTab() { Key = ((int)key).ToString("000"), Content = headerContent, }; if (!rtnList.Contains(newItem)) { rtnList.Add(newItem); } } } rtnList = rtnList.OrderBy(p => p.Key).ToList(); return(rtnList); }