Я разрабатываю пользовательский элемент управления (ascx), который загружает объекты LinkButton во время выполнения. Когда страница aspx загружается в Page_Load, источником данных для каждого LinkButton является запись словаря, например ((ferrari, 2), (chevrolet, 10), (джип, 6)), упорядоченной случайным образом. Когда пользователь щелкает LinkButton, чтобы делать PostBack, чтобы запросить базу данных с дополнительной информацией об элементе. Но когда исполнение достигает событие:ASP.NET LinkButton
protected void objHyperLink_Click (object sender, EventArgs e)
больше не тот же самый элемент, который начал вызов события, это другой один. Как получить правильный объект, который запускает событие?
Благодаря
Если вы назначаете одно и то же событие всем кнопкам, «отправитель» должен быть тем, который инициировал событие. Вы можете передать его в 'LinkButton' через' DirectCast (отправитель As LinkButton) ', если вам нужно. –
Вы должны создавать свои динамические элементы управления в событии 'PreInit', а не в событии' Load'. – Icemanind
@ Cᴏʀʏ Не нужно для 'DirectCast()'. C# может просто использовать его с синтаксисом 'as'. Например, 'LinkButton btn = отправитель как LinkButton;' – mason