У меня есть «холст» (это всего лишь панель управления), и пользователь может нажать кнопку, чтобы добавить определенные элементы управления к холсту, т.е. метки, метки ссылок, изображения и т. Д. ... И затем они могут отредактируйте эти элементы управления, например, они могут редактировать текст метки, которую они только что добавили ...Получение выбранного элемента управления
Но я пытаюсь позволить им выбрать новый шрифт и новый цвет для элемента управления, на который они нажали, но это не так. «т всегда работает, даже если она должна быть ...
код я имею:
private string SelectedControl;
, когда я нажимаю на элемент управления:
private void label_Click(object sender, EventArgs e)
{
Label label = (Label)sender;
SelectedControl = label.Name;
}
, когда пользователь выбирает шрифт:
private void setfont()
{
foreach(Control control in Canvas.Controls)
{
if(control.Name == SelectedControl)
{
control.Font = selectedfont;
}
}
}
Таким образом, этот код работает, но только не все время. Кто-нибудь знает о каком-либо другом способе как-то отслеживать элемент управления Last-Clicked, поэтому на него можно ссылаться позже?
спасибо кучи AP Erebus: D это было очень полезно –
У меня есть один вопрос, хотя .... потому что существует множество различных типов элементов управления ... как я знаю, «какой» щелкнул, используя свой путь ? –
Я не уверен, что вы спрашиваете. Если у вас есть только событие click Label, которое обрабатывается label_Click, у вас не будет проблемы с настройками других типов элементов, выбранными как SelectedLabel. Или вы ищете способ каким-то образом показать пользователю, на который была нажата метка? –