private void addAttributeBox(int rowIndex, ArtifactXmlReader reader, AttributeVO attr) { int longerLine; AttributeVO leftAttr = attr; AttributeVO rightAttr = attr; string leftText = ""; string rightText = ""; ListBox listL = makeNewListBox(); ListBox listR = makeNewListBox(); switch (attr.changed) { case 'U': leftAttr = reader.readAttributeDiffDetail(attr.guid, "L"); rightAttr = reader.readAttributeDiffDetail(attr.guid, "R"); DiffPresenter.getDisagreedAttributeDesc(leftAttr, rightAttr, ref leftText, ref rightText); selectedAttribute = rightAttr; break; case 'C': rightAttr = reader.readAttributeDiffDetail(attr.guid, "R"); DiffPresenter.getMonoAttributeDesc(rightAttr, ref rightText); selectedAttribute = rightAttr; break; case 'D': leftAttr = reader.readAttributeDiffDetail(attr.guid, "L"); DiffPresenter.getMonoAttributeDesc(leftAttr, ref leftText); selectedAttribute = leftAttr; break; default: break; } longerLine = getLongerLine(leftText, rightText); setListItems(listL, leftText); setListItems(listR, rightText); setListBoxSize(listL, leftText, longerLine); setListBoxSize(listR, rightText, longerLine); if (attr.changed == 'D' || attr.changed == 'U') { listL.Tag = leftAttr; listL.ContextMenuStrip = contextMenuStrip1; listL.Click += new System.EventHandler(this.AttributeListClick); // listL.Click += new System.EventHandler(this.AttributeTextClick); } if (attr.changed == 'C' || attr.changed == 'U') { listR.Tag = rightAttr; listR.ContextMenuStrip = contextMenuStrip1; listR.Click += new System.EventHandler(this.AttributeListClick); // listR.Click += new System.EventHandler(this.AttributeTextClick); } tableLayoutPanel1.Controls.Add(listL, 0, rowIndex); tableLayoutPanel1.Controls.Add(listR, 1, rowIndex); return; }