Самый простой способ сделать это - вызвать __doPostBack со стороны клиента.
На стороне клиента метод button1_onclick вызывает:
__doPostBack('<%=UpdatePanel1.ClientID %>','Refresh:0,1,2'); //refresh update panel
На странице сзади добавьте следующий обработчик событий для захвата обратного вызова:
protected void UpdatePanel1_Load(object sender, EventArgs e)
{
string arg = Request.Form["__EVENTARGUMENT"];
if (string.IsNullOrEmpty(arg)) return;
if (arg.StartWith("Refresh")
{
//parse data first then do your thing here...
}
}
И, конечно же, не забудьте привязать событие к вышеуказанному методу:
protected void Page_Init(object sender, EventArgs e)
{
UpdatePanel1.Load += new EventHandler(UpdatePanel1_Load);
}