private void item_TextCleared(object sender, EventArgs e) { ExpressionItem item = (ExpressionItem)sender; if (item == secondLastItem && item != firstItem) { Control parent = item.Parent; parent.Controls.Remove(item); secondLastItem = (ExpressionItem)parent.Controls[parent.Controls.Count - 2]; } }
private void AddItem() { ExpressionItem item = new ExpressionItem(); if (firstItem == null) { firstItem = item; } else if (secondLastItem == null) { secondLastItem = item; } item.TextChanged += item_TextChanged; item.TextCleared += item_TextCleared; topDockPanel1.SuspendDrawing(); topDockPanel1.AddControl(item); topDockPanel1.ResumeDrawing(); }