Проверьте этот ответ: Как узнать, какая UpdatePanel вызывает частичный PostBack?
Также вы можете использовать такой подход без реализации собственного элемента управления UpdatePanel, унаследованного от существующего с отражением:
private static PropertyInfo RequiresUpdateProperty;
protected void Page_Init(object sender, EventArgs e)
{
RequiresUpdateProperty = RequiresUpdateProperty?? typeof(UpdatePanel).GetProperty("RequiresUpdate", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
}
protected void Page_PreRender(object sender, EventArgs e)
{
if ((bool)RequiresUpdateProperty.GetValue(UpdatePanel2, null))
{
// gotcha!
}
}
Имейте в виду, что proeprty RequUpdate возвращает значение false, когда вы устанавливаете Conditional UpdateMode и обратную передачу, вызванную дочерним элементом управления UpdatePanel, который не добавляется в коллекцию Triggers.
P.S. приведенный выше код требует уровня безопасности доступа к коду FullTrust, поскольку он использует отражение