/// <summary> /// 添加或更新更表 /// </summary> /// <param name="oc"></param> /// <param name="item"></param> public static void AddOrUpdate(this ListBox.ObjectCollection oc, object item) { if (!oc.Contains(item)) { oc.Add(item); } }
public static bool isStringInArray(ListBox.ObjectCollection items, string key) { if (items.Contains(key)) { return(true); } return(false); }
public static void AddRangeDistinct(this ListBox.ObjectCollection lb, ListBox.ObjectCollection lbAdd, string SelectedTables) { foreach (var temp in lbAdd) { var a = SelectedTables + "." + temp.ToString(); if (!lb.Contains(a)) { lb.Add(a); } } }
public AddProductForm(ListBox.ObjectCollection items) { InitializeComponent(); foreach (var p in Entities.EntitiesHandler.Handler.Entities.ConcreteProducts.Select(s => s.ProductType.Description + " " + s.Id.ToString())) { if (!items.Contains(p)) { comboBoxProducts.Items.Add(p); } } forceClosing = true; }
public AddRoleForm(ListBox.ObjectCollection items) { InitializeComponent(); foreach (var r in Entities.EntitiesHandler.Handler.Entities.Roles) { if (!items.Contains(r.RoleValue)) { comboBoxRoles.Items.Add(r.RoleValue); } } forceClosing = true; }
private static void analysisWorker_DoWork(object sender, DoWorkEventArgs e) { string argument = (string)((object[])e.Argument)[0]; bool flag = (bool)((object[])e.Argument)[1]; string argument1 = (string)((object[])e.Argument)[2]; string str1 = (string)((object[])e.Argument)[3]; string argument2 = (string)((object[])e.Argument)[4]; ListBox.ObjectCollection objectCollections = (ListBox.ObjectCollection)((object[])e.Argument)[5]; bool[] flagArray = (bool[])((object[])e.Argument)[6]; AnalysisClass.analysisWorker.ReportProgress(0, new Report((object x) => { AnalysisClass.mainForm.pbAnalysis.Value = 0; AnalysisClass.mainForm.lblCurrentAnalysisFileName.Text = string.Empty; AnalysisClass.mainForm.lblAnalysisProgress.Text = "0/0"; LogClass.AppendLine(string.Concat("批量解析Start于", DateTime.Now.ToString()), true); }, null)); if (!Directory.Exists(argument1)) { throw new Exception(string.Concat("Export folder\"", argument1, "\"does not exist,Please re-set the correct folder.")); } string str2 = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath), "umodel.exe"); if (!File.Exists(str2)) { throw new Exception(string.Concat("\"", str2, "\"does not exist,请自行从\"http://www.gildor.org/en/projects/umodel\"网站下载UEViewer程序并将所有文件到本程序所在文件夹。")); } AnalysisClass.TryCreateOutputAnalysisFolder(argument1); List <string> strs = new List <string>(); if (!objectCollections.Contains(str1)) { throw new Exception("解析Start项does not exist,不能进行解析。"); } if (!objectCollections.Contains(argument2)) { throw new Exception("解析结束项does not exist,不能进行解析。"); } int num1 = objectCollections.IndexOf(str1); int num2 = objectCollections.IndexOf(argument2); if (num1 > num2) { throw new Exception("解析Start项在结束项之后,请重新设置解析范围。"); } for (int i = num1; i < num2 + 1; i++) { string fileFullNameFromItemList = AnalysisClass.GetFileFullNameFromItemList(objectCollections[i].ToString(), argument, flag); strs.Add(fileFullNameFromItemList); } AnalysisClass.analysisWorker.ReportProgress(0, new Report((object x) => { if (x != null) { AnalysisClass.mainForm.pbAnalysis.Maximum = (int)x; AnalysisClass.mainForm.lblAnalysisProgress.Text = string.Concat("0/", x.ToString()); } }, (object)strs.Count)); int num3 = 0; while (true) { if (num3 < strs.Count) { AnalysisClass.analysisWorker.ReportProgress(0, new Report((object x) => { if (x != null) { int num = (int)x; AnalysisClass.mainForm.lblCurrentAnalysisFileName.Text = strs[num]; AnalysisClass.mainForm.pbAnalysis.Value = num + 1; Label label = AnalysisClass.mainForm.lblAnalysisProgress; int value = AnalysisClass.mainForm.pbAnalysis.Value; string str = value.ToString(); value = AnalysisClass.mainForm.pbAnalysis.Maximum; label.Text = string.Concat(str, "/", value.ToString()); LogClass.AppendLine(string.Concat("正在解析文件:", strs[num3]), false); } }, (object)num3)); DateTime now = DateTime.Now; AnalysisClass.ue = new UEViewer(strs[num3], argument1, Application.StartupPath); string imageReturnLog = null; string tempFileName = null; bool hasImage = false; try { imageReturnLog = AnalysisClass.ue.AnalysisToImageReturnLog(); tempFileName = AnalysisClass.ue.TempFileName; hasImage = AnalysisClass.ue.HasImage; } finally { AnalysisClass.ue.Dispose(); } if (hasImage) { AnalysisClass.MoveImageFile(argument1, imageReturnLog, tempFileName, strs[num3], flagArray); } if (AnalysisClass.userCancelAnalysis) { AnalysisClass.ue = null; AnalysisClass.lostHandles.Clear(); break; } else { num3++; } } else { break; } } }