2012-05-02 18 views
-2

今、私はAjaxを必要とするASP.NET Webアプリケーションを開発中です。 this tutorialを読んだ後、私は、ツールボックスを右クリックし、クリックしてneccessaryコントロールを追加した後は、Visual Studio 2005で、次のコードを実行しようとした「の項目を選択してください...」:同じコードはVS 2010では動作しますが、2005では動作しません

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %> 
<%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
    Namespace="System.Web.UI" TagPrefix="asp" %> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
<head runat="server"> 
    <title>Untitled Page</title> 
</head> 
<body> 
    <form id="form1" runat="server"> 
     <asp:ScriptManager ID="ScriptManager1" runat="server"/> 

     <asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
      <ContentTemplate> 
       <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> 
       <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> 
      </ContentTemplate> 
     </asp:UpdatePanel> 
    </form> 
</body> 
</html> 

protected void Button1_Click(object sender, EventArgs e) 
{ 
    Label1.Text += "<br/>" + DateTime.Now.ToString(); 
} 

しかしために何らかの理由で、このページはAjaxで動作しませんでした。ボタンをクリックすると、ページがリフレッシュされ、更新された値のラベルが表示されました。私はこのコードで何か間違ったものを見つけることができなかったので、Visual Studio 2010で同じ正確なプロジェクトを開いて実行しようとしました。今回はうまくいった! (ラベルは現在の日付でページを更新せずに更新されました)

Visual Studio 2005でこのコードが動作しないようにするにはどうしたらいいですか?

おかげで、 Itamar

+0

この質問に間違いがある場合は、それをコメントしてお知らせください。 –

答えて

0

があなたののUpdatePanelのは、UpdateModeconditionalに設定されていることかもしれませんあなたはtriggerを指定する必要があります。

また、プロパティChildrenAsTriggerstrueを定義することもできます。

http://msdn.microsoft.com/en-us/library/system.web.ui.updatepanel.updatemode.aspxを参照してください。そして、私はあなたのページの上に任意のレジスタを見つけませんか?あなたはそれをbuldがありますか?この

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %> 
+0

'ChildrenAsTriggers =" True "'または 'UpdateMode =" Always "'を追加しても何も変更されませんでした。 –

+0

更新された応答.. – coder

+0

このレジスタを追加することで、ビルドが妨げられます。_Error 1ファイルまたはアセンブリ 'AjaxControlToolkit'またはその依存関係の1つをロードできませんでした。指定したファイルが見つかりません。このツールキットをインストールする必要はありますか? –

0

4GuysFromRollaは、Visual Studio 2005が目標とされていることを述べて追加しようとしていない場合2.0の.NETアプリで、なぜAJAXアセンブリのv3.5が動作しないのかを説明するかもしれない(http://www.4guysfromrolla.com/articles/112107-1.aspx)。しかしチャールズ・ヤングはこれに反する(http://geekswithblogs.net/cyoung/archive/2007/12/01/117279.aspx)。

0

私はVS 2005でAJAXのサポートが制限されていたと考えています。代わりにToolkitScriptManagerを使用して、その効果が助けられるかどうかを確認してください。

<cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server" EnablePartialRendering="true"></cc1:ToolkitScriptManager> 
+0

この 'ToolkitScriptManager'をどのように追加しますか?私は、.NET Frameworkのコンポーネントリストでそれを見つけることができません。 –

+0

これはAJAX Control Toolkitの一部です。 –

+0

さて、私はToolkitをインストールし、ScriptManagerをToolkitScriptManagerに置き換えました。しかし、コードを実行しても、ページはまだリフレッシュされています。 –

関連する問題