Hey,
I think, I may have found a solution for you.
As I understood, Your Problem Was: "You want to update contents of UpdatePanel as many times you click Button4 (External Button - out of UpdatePanel)".
here is the reference that might help you:
Introduction to the UpdatePanel Control:D
I tried your code my self:
I did put a Label in UpdatePanel and on Every Click it is writing DateTime.Now() to Label.
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<fieldset>
<legend>Label Change on Button Click</legend>
<asp:Label ID="Label1" runat="server" Text="In Heaven"/>
</fieldset>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1" />
</Triggers>
</asp:UpdatePanel>
Steps:
1) Add Script Manager
2) Add Update Panel
(UpdateMode Conditional - bcoz we want to update on manual clicks)
and
3) Label1 is where we post changes on every click...
here in Triggers
we do not need to write EventName (By defaul system calls default Click method)
Here my button is "Button1" and Label in UpdatePanel is "Label1".
And to work with UpdateProgress ....
Please Read the reference about
UpdateProgress particularly
Programming UpdateProgress Controls in Client Script where and how to use UpdateProgress (bcoz in Update Progress you can only work with HTML elements - if you want to use that declared element in code behind - you have to work with javascripts - example: to abort post back).
I have tried my best to understand your question and
please refer to provided reference it will be more helpful.
Version of .Net Framework 4.0 and Asp.Net 2.
Thanks and Regards,
Shrutik Panchal.