、あなたは(それがロードしながら、ロード像を示す)asynchonouslyツリービューをロードするためのボタンをクリックし、ページを読み込むことができます。
TreeView
をUpdatePanel
に入れますが、データソースにはまだバインドしないでください。また、TreeView
をロードするためのボタンを含めて(例のため)、UpdatePanel
のTriggers
の1つとして設定します。このように:
今
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Button ID="Button1" runat="server" Text="Click here to load the TreeView" onclick="Button1_Click" />
<asp:TreeView ID="TreeView1" runat="server">
// TreeView details go here
</asp:TreeView>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
、Button1_Click
では、Webサービスを呼び出すことによってTreeView
にデータをバインドすることができます。
protected void Button1_Click(object sender, EventArgs e)
{
// This is where you would bind the data to your TreeView using the web service
TreeView1.DataSource = GetData();
}
これはちょうどあなたのUpdatePanel
がTreeView
でリロードする原因となります。
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
function showSpinner() {
$("#<%= UpdatePanel1.ClientID %>").append("<img id='spinnerImg' src='/Images/ajaxSpinner.gif' ></img>");
}
</script>
注:今、あなたはちょうどあなたが待っている間、ローディング画像を表示するJavaScript関数必要UpdatePanel
終了するとリロード、それはロード画像なしでそうするだろう(そう、明示的にそれを削除する必要はありません) 。
私の答えがあなたを助けたら、アップグレートするそれを受け入れる=) – jadarnel27
あなたの新しい問題については、イメージが上がっていないのでしょうか、UpdatePanel/asyncのアップデートプロセス全体が本番サーバで壊れていますか?別の質問を投稿する価値があるかもしれません。 – jadarnel27