private void btnDown_Click(object sender, EventArgs e) { if ((this.LV_Sort.SelectedItems.Count != 0) && (this.LV_Sort.SelectedItems[0].Index < (this.LV_Sort.Items.Count - 1))) { string text = ""; string str2 = ""; string str3 = ""; string str4 = ""; int index = 0; index = this.LV_Sort.SelectedItems[0].Index; DEDefSort tag = new DEDefSort(); DEDefSort sort2 = new DEDefSort(); text = this.LV_Sort.Items[index].Text; str3 = this.LV_Sort.Items[index].SubItems[1].Text; tag = (DEDefSort)this.LV_Sort.Items[index].Tag; str2 = this.LV_Sort.Items[index + 1].Text; str4 = this.LV_Sort.Items[index + 1].SubItems[1].Text; sort2 = (DEDefSort)this.LV_Sort.Items[index + 1].Tag; this.LV_Sort.Items[index].Text = str2; this.LV_Sort.Items[index].SubItems[1].Text = str4; this.LV_Sort.Items[index].Tag = sort2; this.LV_Sort.Items[index + 1].Text = text; this.LV_Sort.Items[index + 1].SubItems[1].Text = str3; this.LV_Sort.Items[index + 1].Tag = tag; this.ReFreshLVState(); this.LV_Sort.Items[index + 1].Selected = true; this.LV_Sort.Items[index + 1].ForeColor = Color.White; this.LV_Sort.Items[index + 1].BackColor = Color.Blue; this.SortNewLst(); } }
private void AddLVObj(string str_label, bool b_isAsc, DEDefSort deSort) { ListViewItem item = new ListViewItem(str_label) { SubItems = { b_isAsc ? "升" : "降" }, Tag = deSort }; this.LV_Sort.Items.Add(item); }
private void DelSelAttr(DEDefSort deSort) { foreach (DEDefSort sort in this.al_NewAttr) { if (sort.OID == deSort.OID) { this.al_NewAttr.Remove(sort); this.delLVObj(); break; } } }
private void SortNewLst() { if (this.al_NewAttr.Count != 0) { this.al_NewAttr.Clear(); for (int i = 0; i < this.LV_Sort.Items.Count; i++) { DEDefSort tag = (DEDefSort)this.LV_Sort.Items[i].Tag; tag.POSITION = i; this.al_NewAttr.Add(tag); } } }
private void SetSelAttr(string str_label, bool b_isAsc) { DEMetaAttribute metaAttr = this.GetMetaAttr(str_label); DEDefSort deSort = new DEDefSort { OID = Guid.NewGuid(), ATTROID = metaAttr.Oid, CLSOID = this.g_SaveOid, ISASC = b_isAsc ? true : false, POSITION = 0x7fffffff }; this.AddLVObj(str_label, b_isAsc, deSort); this.al_NewAttr.Add(deSort); }
private void btnRemove_Click(object sender, EventArgs e) { if (this.LV_Sort.SelectedItems.Count != 0) { DEDefSort tag = (DEDefSort)this.LV_Sort.SelectedItems[0].Tag; this.DelSelAttr(tag); this.InitUnDefineAttrLst(); this.LoadAttrLstData(); if (this.LV_Sort.Items.Count > 0) { this.LV_Sort.Items[0].Selected = true; this.LV_Sort.SelectedItems[0].ForeColor = Color.White; this.LV_Sort.SelectedItems[0].BackColor = Color.Blue; } this.SortNewLst(); } }
private void InitLocalDefAttr(string str_sort) { if (((str_sort != null) && (str_sort.Trim().Length > 0)) && (str_sort != "nothing")) { str_sort = str_sort.Trim(); char[] separator = ",".ToCharArray(); string[] strArray = str_sort.Split(separator); for (int i = 0; i < strArray.Length; i++) { char[] chArray2 = "|".ToCharArray(); string[] strArray2 = strArray[i].Split(chArray2); string str3 = strArray2[1].ToString(); DEDefSort sort = new DEDefSort { OID = Guid.NewGuid(), CLSOID = this.g_ClsOid, ATTROID = new Guid(strArray2[0].ToString()), ISASC = (str3 == "asc") ? true : false, POSITION = i }; this.al_NewAttr.Add(sort); } } }
private void InitSortList(bool b_first) { this.strSort = ""; string userOption = (string)ClientData.GetUserOption(this.userOid + this.curFolder.Oid.ToString()); if ((b_first && (userOption != null)) && (userOption.Trim().Length > 0)) { if (userOption != "nothing") { this.strSort = userOption; } } else { int num = 0; if (this.attrSort.Count > 0) { for (int i = 0; i < this.attrSort.Count; i++) { DEDefSort sort = (DEDefSort)this.attrSort[i]; switch (this.emResType) { case emResourceType.PLM: foreach (DEMetaAttribute attribute4 in this.attrList) { if (attribute4.Oid == sort.ATTROID) { string str8 = sort.ISASC ? " asc" : " desc"; string str9 = "PLM_CUS_" + this.curFolder.ClassName; if (num == 0) { this.strSort = " order by " + str9 + ".PLM_" + attribute4.Name + str8; } else { string strSort = this.strSort; this.strSort = strSort + " , " + str9 + ".PLM_" + attribute4.Name + str8; } num++; break; } } break; case emResourceType.Customize: foreach (DEMetaAttribute attribute in this.attrList) { if (attribute.Oid == sort.ATTROID) { string str2 = sort.ISASC ? " asc" : " desc"; string str3 = "PLM_CUS_" + this.curFolder.ClassName; if (num == 0) { this.strSort = " order by " + str3 + ".PLM_" + attribute.Name + str2; } else { string str10 = this.strSort; this.strSort = str10 + " , " + str3 + ".PLM_" + attribute.Name + str2; } num++; break; } } break; case emResourceType.OutSystem: foreach (DEOuterAttribute attribute2 in this.attrOuter) { if (attribute2.FieldOid == sort.ATTROID) { string str4 = sort.ISASC ? " asc" : " desc"; if (num == 0) { this.strSort = " order by " + attribute2.OuterAttrName + str4; } else { this.strSort = this.strSort + " , " + attribute2.OuterAttrName + str4; } num++; break; } } break; case emResourceType.Standard: { new PLSPL(); DEMetaClass class2 = ModelContext.MetaModel.GetClass(this.curFolder.ClassOid); DEMetaClass class3 = ModelContext.MetaModel.GetClass(class2.RefClass); if (sort.ATTROID == Guid.Empty) { ClientData.SetUserOption(this.userOid + this.curFolder.Oid.ToString(), "nothing"); ClientData.SetUserOption(this.userOid + this.curFolder.Oid.ToString() + "_def", "nothing"); return; } foreach (DEMetaAttribute attribute3 in this.attrList) { if (attribute3.Oid == sort.ATTROID) { string str5 = sort.ISASC ? " asc" : " desc"; string str6 = "PLM_CUS_".Replace("_CUS_", "_CUSV_") + class3.Name; string str7 = "PLM_PSM_ITEMMASTER_REVISION"; if (num == 0) { if (attribute3.Name.StartsWith("M_") || attribute3.Name.StartsWith("R_")) { this.strSort = " order by " + str7 + ".PLM_" + attribute3.Name + str5; } else { this.strSort = " order by " + str6 + ".PLM_" + attribute3.Name + str5; } } else if (attribute3.Name.StartsWith("M_") || attribute3.Name.StartsWith("R_")) { string str11 = this.strSort; this.strSort = str11 + " , " + str7 + ".PLM_" + attribute3.Name + str5; } else { string str12 = this.strSort; this.strSort = str12 + " , " + str6 + ".PLM_" + attribute3.Name + str5; } num++; break; } } break; } } } } } }