Я использую следующий код для создания нескольких новых ярлыков на панели 1 при поиске в базе данных. Есть ли возможность удалить ярлык, если я удалю одно имя в моей базе данных?C# Удалить ярлык после создания программно
public void labelLocate(string name, string labelLocate, int x, int y)
{
// name is the ID in the database
var label = this.Controls.OfType<Label>().FirstOrDefault(l => l.Name == name);
if (label != null) this.Controls.Remove(label);
Label labelstring = new Label();
labelstring.Width = 0;
labelstring.Text = name;
labelstring.Name = name;
labelstring.AutoSize = true;
this.Controls.Remove(labelstring);
this.Controls.Add(labelstring);
labelstring.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
labelstring.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
labelstring.BringToFront();
switch (labelLocate)
{
case "Up": labelstring.Location = new Point(x + (panel1.Location.X + 3), (y - 20) + (panel1.Location.Y + 3));
break;
case "Down": labelstring.Location = new Point(x + (panel1.Location.X + 3), (y) + 5 + (panel1.Location.Y + 3));
break;
case "Left": labelstring.Location = new Point(x - 5 - (labelstring.Width) + (panel1.Location.X + 3), y + 5 + (panel1.Location.Y + 3));
break;
case "Right": labelstring.Location = new Point(x + 10 + (panel1.Location.X + 3), y + 5 + (panel1.Location.Y + 3));
break;
}
}
Это не имеет смысла (IMHO), чтобы добавить [мой код] (HTTP : //stackoverflow.com/a/27897948/284240) в верхней части метода. Почему вы хотите удалить элемент управления, прежде чем добавлять его? Вы хотите удалить его, когда элемент был удален в базе данных, поэтому вы должны поместить его в конце этого метода. –
@Tim Schmelter Моя программа смогла добавить/удалить/отредактировать «ID», поэтому, когда я обновляюсь в своей базе данных, я должен позвонить этому коду, чтобы проверить ID. Если идентификатор действителен, то создайте новый ярлык, иначе удалите те, которые я создал ранее. Я пытаюсь поставить в конце кода, но его все равно то же самое. – JefferyLR