private void lbAdd_Click(object sender, EventArgs e) { // 先获取到操作列表. List<string> operats = new List<string>(); foreach (string op in lbAddOperate.SelectedItems) { operats.Add(op); } List<int> fieldops = new List<int>(); for (int i = 0; i < lbFieldList.SelectedIndices.Count; i++) { fieldops.Add(lbFieldList.SelectedIndices[i]); } AddLog(""); AddLog("编辑操作组. 【" + DateTime.Now.ToString() + "】"); foreach (string op in operats) { IOperater ops = new IOperater(op, fieldops); if (!ContainedOPS(op, fieldops)) { this.Operaters.Add(ops); AddLog("--->添加操作:" + op.ToString() + ":" + string.Join(",", fieldops.ToArray())); } else { AddLog("已存在操作:" + op.ToString() + ":" + string.Join(",", fieldops.ToArray())); } } AddLog(""); BindOperater(); REFRESH_OPERA(); }
/// <summary> /// 将node导入ops. /// </summary> /// <param name="ops"></param> /// <param name="nodelist"></param> List<IOperater> LoadOPFROMNODES(XmlNodeList nodelist) { List<IOperater> ops = new List<IOperater>(); IOperater tmpOP; string type; List<string> FieldStr; List<int> FieldIndex; foreach (XmlNode xn in nodelist[0].ChildNodes) { type = xn.Attributes["Type"].Value; FieldStr = xn.Attributes["FieldIndex"].Value.Split(',').ToList(); FieldIndex = (from s in FieldStr select (Int32.Parse(s))).ToList(); tmpOP = new IOperater(type, FieldIndex); ops.Add(tmpOP); } return ops; }
/// <summary> /// /// </summary> /// <param name="op"></param> /// <param name="modelinfo"></param> /// <returns></returns> public List<AttributeInfo> getColumns(IOperater op, EntityInfo modelinfo) { List<AttributeInfo> columns = new List<AttributeInfo>(); foreach (int i in op.FieldIndex) { columns.Add(modelinfo.Attributes[i]); } return columns; }