<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>ASP.NET AJAX</title><link>http://blogs.wankuma.com/koka/category/593.aspx</link><description>ASP.NET AJAX</description><managingEditor>koka</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>koka</dc:creator><title>わんくま同盟大阪勉強会#8の２次会で。</title><link>http://blogs.wankuma.com/koka/archive/2007/04/29/73654.aspx</link><pubDate>Sun, 29 Apr 2007 01:18:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/04/29/73654.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/73654.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/04/29/73654.aspx#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/73654.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/73654.aspx</trackback:ping><description>&lt;p&gt;わんくま同盟大阪勉強会#8に参加してきました。これからOSがWindows VISTAへ移行していくうえで押さえておくべき必須の機能を、&lt;A href="http://blogs.wankuma.com/carbonara/"&gt; 刈歩 菜良&lt;/a&gt;さん、&lt;A href="http://blogs.wankuma.com/mnow/"&gt; えムナウ&lt;/a&gt;さん、&lt;A href="http://blogs.wankuma.com/jitta/"&gt; はなおか じった&lt;/a&gt;さん、&lt;A href="http://blogs.wankuma.com/naka/"&gt;中博俊&lt;/a&gt;さんが話すとなれば、そら参加人数51人と大阪では過去最高にもなるわけです。パチパチパチ。
&lt;/p&gt;&lt;p&gt;さらに大阪では初？の懇親会２次会が執り行われ、その場でASP.NET AJAXのOnTextChangedイベントでうんぬん。。。と話を持ち出して、中さんから「そのイベントはないやろ！」突っ込みを受け、えムナウさんからご指導をいただき、その場では私の勘違いだと受け入れたんですが、帰りしにやっぱりASP.NET AJAXでOnTextChangedイベント拾って処理してたよなぁと気になったので、それを優先して書いてしまいますｗ&lt;/p&gt;
&lt;p&gt;従来WebアプリでAJAXを用いてテキストボックスの内容変更を拾って処理を行うには、（その処理方法の良し悪しは置いておいて・・・）クライアント側のJavascriptでonchangeやonblurイベントを用いていました。&lt;br /&gt;
　それをASP.NET AJAXで素直に実現しようとするならば、UpdatePabelで囲ったテキストボックスの「AutoPostBack」を有効にし、OnTextChangedイベントを用いるのが、一番手間がかからないかなぁ～それってありですかねぇ？と聞きたかったのでした。&lt;br /&gt;
　この方式でたとえば入力チェックを行うと、サーバ側の処理でクライアント側でAJAXが有効なのかどうか、深く考えなくてよくなったりします。それを踏まえて複数テキストがある場合をざっくり書くと下のようになります。&lt;/p&gt;
&lt;pre&gt;
protected void TextBox1_OnTextChanged(object sender, EventArgs e)
{
    // TextBox1の入力チェック用メソッド
}
protected void TextBox2_OnTextChanged(object sender, EventArgs e)
{
    // TextBox2の入力チェック用メソッド
}
protected void TextBox3_OnTextChanged(object sender, EventArgs e)
{
    // TextBox3の入力チェック用メソッド
}
protected void Submit_Click(object sender, EventArgs e)
{
    // TextBox1の入力チェック用メソッド
    // TextBox2の入力チェック用メソッド
    // TextBox3の入力チェック用メソッド
    // で、全部のチェック結果を元に処理実行
}
&lt;/pre&gt;
&lt;p&gt;こうしてるとチェック処理を１箇所で扱えてうれしいなぁと。それにAJAXでのチェックをやめようとした場合にもまあ被害は少ないし幸せですよと。&lt;/p&gt;
&lt;p&gt;さあどうだ！&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/73654.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ASP.NET2.0―実践.NET Framework+Ajax Extensionsで実現するWeb</title><link>http://blogs.wankuma.com/koka/archive/2007/04/16/71750.aspx</link><pubDate>Mon, 16 Apr 2007 23:32:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/04/16/71750.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/71750.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/04/16/71750.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/71750.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/71750.aspx</trackback:ping><description>&lt;P&gt;本屋に&lt;A href="http://bpstore.nikkeibp.co.jp/item/main/148910055590.html"&gt;Microsoft Visual Studio 2005によるWebアプリケーションテスト技法(ISBN 4891005559)&lt;/A&gt;を求めに行った際、見かけて「そーいやASP.NET2.0について調べてないなぁ」と、ページをパラパラめくってみると、ASP.NETの概要＋2.0での新機能が分かりやすくまとめられていたので買い。&lt;/P&gt;
&lt;P&gt;&lt;/P&gt;
&lt;DIV class=amazon-item-box style="BORDER-RIGHT: rgb(153,153,153) 1px solid; PADDING-RIGHT: 0pt; BORDER-TOP: rgb(153,153,153) 1px solid; DISPLAY: block; PADDING-LEFT: 0pt; PADDING-BOTTOM: 0pt; MARGIN: 8px; BORDER-LEFT: rgb(153,153,153) 1px solid; PADDING-TOP: 0pt; BORDER-BOTTOM: rgb(153,153,153) 1px solid; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; -moz-border-radius-bottomright: 10px; -moz-border-radius-bottomleft: 10px"&gt;
&lt;DIV class=amazon-item-image style="PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: 10px; PADDING-TOP: 10px"&gt;&lt;A href="http://www.amazon.co.jp/exec/obidos/ASIN/4774130605/httdhatnej0ce-22/ref=nosim" target=_blank&gt;&lt;IMG title="ASP.NET2.0―実践.NET Framework+Ajax Extensionsで実現するWeb" style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; DISPLAY: inline; VERTICAL-ALIGN: bottom; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" alt="ASP.NET2.0―実践.NET Framework+Ajax Extensionsで実現するWeb" src="http://ec1.images-amazon.com/images/P/4774130605.01._SCMZZZZZZZ_V24687328_.jpg"&gt;&lt;/A&gt;&lt;/DIV&gt;
&lt;DL class=amazon-item-info style="PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 10px; FONT-SIZE: 10pt; PADDING-BOTTOM: 0pt; MARGIN-LEFT: 10px; LINE-HEIGHT: 110%; PADDING-TOP: 0pt"&gt;
&lt;DT class=amazon-item-name style="DISPLAY: block; MARGIN-BOTTOM: 5px; LINE-HEIGHT: 120%"&gt;&lt;A title="ASP.NET2.0―実践.NET Framework+Ajax Extensionsで実現するWeb" href="http://www.amazon.co.jp/exec/obidos/ASIN/4774130605/httdhatnej0ce-22/ref=nosim" target=_blank&gt;ASP.NET2.0―実践.NET Framework+Ajax Extensionsで実現するWeb&lt;/A&gt;&lt;/DT&gt;
&lt;DD&gt;
&lt;UL class=amazon-item-info-list style="PADDING-LEFT: 0px; LINE-HEIGHT: 120%; LIST-STYLE-TYPE: none"&gt;
&lt;LI&gt;発売元: 技術評論社&lt;/LI&gt;
&lt;LI&gt;レーベル: 技術評論社&lt;/LI&gt;
&lt;LI&gt;スタジオ: 技術評論社&lt;/LI&gt;
&lt;LI&gt;メーカー: 技術評論社&lt;/LI&gt;
&lt;LI&gt;価格: ￥ 2,604&lt;/LI&gt;
&lt;LI&gt;発売日: 2007/03&lt;/LI&gt;
&lt;LI&gt;売上ランキング： 35393&lt;/LI&gt;&lt;/UL&gt;&lt;/DD&gt;&lt;/DL&gt;
&lt;P class=amazon-item-footer style="CLEAR: left; PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: x-small; PADDING-BOTTOM: 4px; LINE-HEIGHT: 100%; PADDING-TOP: 4px; BACKGROUND-COLOR: rgb(240,240,240); TEXT-ALIGN: right"&gt;posted with &lt;A href="http://socialtunes.net/"&gt;Socialtunes&lt;/A&gt; at 2007/04/15 &lt;/P&gt;&lt;/DIV&gt;
&lt;P&gt;ちょうど自分アプリのプロタイプを作りなおそうとしてたのでいいタイミングでした。基本を押さえておこうとざ～っと読んだのですが、やっぱりだいぶ進化してますね。改めて関心。&lt;/P&gt;
&lt;P&gt;しかしこの1.xから2.0への進化はASPからASP.NETになった衝撃に匹敵します。また開発が楽になりますね。OnClientClickやUseSubmitBehaviorプロパティなんて涙がちょちょぎれますし、今まで敬遠していた検証コントロールも、検証グループ機能ってのが追加されているのでついに利用するかもしれません。&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;あとまったく予想していなかった別の衝撃がありました。&lt;/P&gt;
&lt;P&gt;&lt;B&gt;P117の表２&lt;/B&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;ポストバック沙希のURLを取得または設定します&lt;/BLOCKQUOTE&gt;
&lt;P&gt;誰ですかｗこれがきっかけで何変化が起きました・・・&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;&lt;B&gt;P127のListControlの説明&lt;/B&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;(略)それに対して、&amp;#8221;ホンダ&amp;#8221;は「Value=003」としてListItemを作成しているためRemove()呼び出しでアイテムが一致せず削除されません。&lt;/BLOCKQUOTE&gt;
&lt;P&gt;その下のサンプルソースです。&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;// アイテムを追加
ListBox1.Items.Add(new ListItem("フェラーリ", "001"));
ListBox1.Items.Add(new ListItem("ホンダ", "002"));
ListBox1.Items.Add(new ListItem("ロータス", "003"));
ListBox1.Items.Add(new ListItem("ポルシェ"));
// アイテムの削除
ListBox1.Items.RemoveAt(0);
ListBox1.Items.Remove(new ListItem("ロータス", "003"));
ListBox1.Items.Remove("ポルシェ");
ListBox1.Items.Remove("ホンダ");// ← 削除されない&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;いったいなにを信じたらいいんですかｗ&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;&lt;B&gt;P128の表4&lt;/B&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;SekectedValueプロパティ&lt;/BLOCKQUOTE&gt;
&lt;P&gt;お約束もしっかりとｗ&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;&lt;B&gt;P144&lt;/B&gt;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;(略)これは.NET Frameworkがインストールフォルダ配下のonfigフォルダ(C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG)にある「Web.config」ファイルで定義されています&lt;/BLOCKQUOTE&gt;
&lt;P&gt;微妙ですが、ツボにはまりました。オンフィグ。&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;特に荒さがししたわけでないのですが、こうも一部に集中して誤植（タイプミス）があると、もう次を期待しつつ読まざるをえないじゃあないですか！そしてその期待にしっかりとそれに応えてくれるしｗ途中から笑いの神が下りたに違いない。技術書なのにｗ&lt;/P&gt;&lt;BR&gt;
&lt;P&gt;なんにせよ、買ってよかったと思いますｗ&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/71750.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ClickOnceだ！.NET Remotingだ！</title><link>http://blogs.wankuma.com/koka/archive/2007/04/01/69757.aspx</link><pubDate>Sun, 01 Apr 2007 11:24:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/04/01/69757.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/69757.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/04/01/69757.aspx#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/69757.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/69757.aspx</trackback:ping><description>&lt;P&gt;明日から久しぶりに新しいお客さんの下で4か月ほど作業をすることになりました。今任されている作業もこなしつつですが^^;&lt;/P&gt;
&lt;P&gt;その作業先で現在進めているシステム開発は、ClickOnceで.NET RemotingでSQL Serverだと聞いた時はその場で小躍りしそうになりました。これで言語がC#だと私的に満点だったのですが、VB2005だそうです。特にVB2005が嫌というわけではなく、今までVS2003でVB.NETやっており別言語での開発がしたいなぁと考えていたので、C#がよかったなぁ程度です。&lt;/P&gt;
&lt;P&gt;そういえばわんくま同盟に参加させていただいた当初も同じような開発案件に参加する予定で、そこからなにかネタを出そうとしてたのを思い出しました。結局その案件には参加せずだったので、「ようやくおれの時代がきたか！」って感じです。けどもうこれからの旬はWPFとかなんですよねぇorz&lt;/P&gt;
&lt;P&gt;それはさておき、新しい技術を学ぶ際には、やはり実際の開発の中でのほうが、個人的にちょこちょことプログラムを組んで学ぶときよりも、納期というプレッシャーや、実装するうえでの問題点などもより多く出てくるはずなので、いい経験になるなぁと、かなり楽しみです。&lt;/P&gt;
&lt;P&gt;ちょっと不安なことは、昔、&lt;A href="http://www.amazon.co.jp/gp/product/4798005800?ie=UTF8&amp;amp;tag=httdhatnej0ce-22&amp;amp;linkCode=as2&amp;amp;camp=247&amp;amp;creative=1211&amp;amp;creativeASIN=4798005800"&gt;これからはじめる.NET Framework .NETリモーティング&lt;/A&gt;&lt;IMG style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; MARGIN: 0px; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none" height=1 alt="" src="http://www.assoc-amazon.jp/e/ir?t=httdhatnej0ce-22&amp;amp;l=as2&amp;amp;o=9&amp;amp;a=4798005800" width=1 border=0&gt;を買って個人的に遊んでたんですが、その時はまだ.Net1.1だったわけで・・・.Net2でなにも変わってないですよね・・・&lt;/P&gt;
&lt;P&gt;もう一つの不安が、その開発は途中段階で人が突然抜けてしまう所への緊急投入なことですかね。システムの設計書はなく、段階的リリースを行っているそうで、すでに一部運用テストされており、改修作業と新規開発を同時に行っているそうで・・・&lt;/P&gt;
&lt;P&gt;&lt;B&gt;&lt;BIG&gt;なのに引き継ぎ期間が半日て・・・orz&lt;/BIG&gt;&lt;/B&gt;&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/69757.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>Firefox2.0.0.3でASP.NET AJAXの問題解決？</title><link>http://blogs.wankuma.com/koka/archive/2007/03/21/68234.aspx</link><pubDate>Wed, 21 Mar 2007 22:57:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/03/21/68234.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/68234.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/03/21/68234.aspx#Feedback</comments><slash:comments>19</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/68234.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/68234.aspx</trackback:ping><description>&lt;p&gt;&lt;A href="http://blogs.wankuma.com/koka/archive/2007/03/11/66076.aspx" target="_blank"&gt;Firefox2.0.0.2へのバージョンアップがASP.NET AJAXに影響する&lt;/a&gt;でASP.NET AJAX ControlKitの一部コントロールの動作が怪しくなっていた件ですが、さっきFirefox2.0.0.3にバージョンアップしたところ問題が解消された模様。&lt;/p&gt;
&lt;p&gt;動作確認は自アプリで利用しているModalPopupExtenderのShow、hideメソッドに関してだけですが。。。&lt;/p&gt;
&lt;p&gt;&lt;a href="http://forums.asp.net/thread/1600941.aspx" target="_blank"&gt;ASP.NET Forums - FireFox update 2.0.0.2 breaks some scenarios in ASP.NET AJAX apps&lt;/a&gt;でもFirefox 2.0.0.3バージョンアップに対する書き込みがあり、&lt;a href="https://bugzilla.mozilla.org/show_bug.cgi?id=371576" target="_blank"&gt;Bug 371576 &amp;#8211; Script elements added with appendChild no longer execute synchronously (was: Firefox 2.0.0.2 update breaks Backbase enabled web sites)&lt;/a&gt;の対応によって問題が解消されたように感じます。英語を理解していないので感覚です。いわゆるシックスセンス^^;すいませんorz&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/68234.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>Firefox2.0.0.2へのバージョンアップがASP.NET AJAXに影響する</title><link>http://blogs.wankuma.com/koka/archive/2007/03/11/66076.aspx</link><pubDate>Sun, 11 Mar 2007 00:20:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/03/11/66076.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/66076.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/03/11/66076.aspx#Feedback</comments><slash:comments>134</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/66076.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/66076.aspx</trackback:ping><description>&lt;br /&gt;
&lt;p&gt;&lt;a href="http://forums.asp.net/thread/1600941.aspx" target="_blank"&gt;ASP.NET Forums - FireFox update 2.0.0.2 breaks some scenarios in ASP.NET AJAX apps&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;blockquote&gt;&lt;p&gt;We&amp;#8217;re seeing that the 2.0.0.2 release of FireFox has a behavior change that&amp;#8217;s affecting ASP.NET AJAX. &lt;/p&gt;
&lt;p&gt;Basically the dynamically loaded scripts seem to now execute asynchronously, which causes them to fire after the inline scripts, whereas previously they&amp;#8217;d fire as soon as they were added to the DOM. &lt;/p&gt;
&lt;p&gt;This will affect scenarios where a component relies on PageRequestManager events inside of an UpdatePanel. For example the ModalPopup control that is part of the Control Toolkit.&lt;/p&gt;
&lt;p&gt;We are actively working with the Firefox team to figure out the best approach to address this issue and we will update this thread as soon as we know something&lt;/p&gt;&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;だそうです。&lt;/p&gt;
&lt;p&gt;たぶん、Firefox2.0.0.2へのバージョンアップでFirefoxのDOMの仕様が変わった影響で、ASP.NET AJAXの一部のアプリの動作が怪しくなるよ～。Firefoxの開発チームと連携して解決するから待っててね～。ということでしょう。超勝手意訳ですがね^^;&lt;/p&gt;
&lt;p&gt;しくしくしく&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/66076.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ModalPopupExtenderが動かなくなる</title><link>http://blogs.wankuma.com/koka/archive/2007/03/10/66069.aspx</link><pubDate>Sat, 10 Mar 2007 23:54:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/03/10/66069.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/66069.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/03/10/66069.aspx#Feedback</comments><slash:comments>132</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/66069.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/66069.aspx</trackback:ping><description>&lt;br /&gt;
&lt;p&gt;ひさしぶりにASP.NET AJAXの使いどころの見極め「兼」個人的に欲しいアプリ作りを再開しようかとFirefoxでアプリを開いてみると、ありゃ？子画面の表示に利用しているModalPopupExtenderコントロールのShowメソッドが意図したとおりに動作しないじゃないかorz&lt;/p&gt;
&lt;p&gt;ModalPopupExtenderで表示したパネルコントロールは通常、OKかキャンセルボタンとして設定したボタンをクリックすると閉じてしまいます。それをShowメソッドを呼び出すことで表示を維持することができます。それが可能だとパネルコントロール内でなんらかの入力をする場合、入力チェックなどをそこで出来るわけです。実際IE6とIE7では動作します。&lt;/p&gt;
&lt;p&gt;・・・いやいやいや。Firefoxでも動かしてたぞ！と思って去年設定したFirefoxPortableをひっぱり出してきてみました。Firefoxのバージョンは2.0.0.1です。むー動くやん。じゃあFirefoxのバージョンアップをすれば、どーよ？と思ってバージョンアップを試みる。&lt;/p&gt;
&lt;p&gt;・・・・・まーじーでーすーかぁぁぁぁぁorz&lt;/p&gt;
&lt;p&gt;拡張機能が悪さをしているならばわかるのだけれど、ブラウザのバージョンアップで動作しなくなるのは辛い。Ajax control toolkitがバージョンアップしてて、それを適用済みだったのでそれかなぁとも思ったのだけれども、それより辛い(TAT)&lt;/p&gt;
&lt;p&gt;こういうとき、フレームワークを他に依存しているのを実感しますねぇ。すぐに手を出せないし、原因個所がわかってもすぐにそれを反映できない。&lt;/p&gt;
&lt;p&gt;さーどうしたものか。&lt;/p&gt;
&lt;p&gt;まずは&lt;a href="http://forums.asp.net/2/1536563/ShowThread.aspx" target="_blank"&gt;ここの内容&lt;/a&gt;を確認してみよかなぁ。。。&lt;/p&gt;
&lt;p&gt;&lt;b&gt;2007/03/11追記&lt;/b&gt;&lt;a href="http://forums.asp.net/2/1536563/ShowThread.aspx" target="_blank"&gt;ASP.NET Forums - ModalPopup Postback issues in Firefox 2.0.0.1&lt;/a&gt;にてとりあえずの回避策が提示されてます。&lt;/p&gt;
&lt;p&gt;まず、配置しているModalPopupExtenderコントロールにBehaviorIDを設定します。ここではIDを「ModalPopup」とします。&lt;/p&gt;
&lt;p&gt;次にPage_Loadメソッドに以下のコードを追加します。BehaviorIDに「ModalPopup」以外を設定する場合、ソース中のIDも変更しましょう。&lt;/p&gt;
&lt;p&gt;&lt;blockquote&gt;&lt;pre&gt;
String s = "{ window.setTimeout(\"$find('ModalPopup').show();\",0); }";
ScriptManager.RegisterStartupScript(Page, typeof (Page), "openModalPopup", s, true);
&lt;/pre&gt;&lt;/blockquote&gt;&lt;/p&gt;
&lt;p&gt;一応これでshowメソッドが有効となります。Firefox2.0.0.2で確認済み。なんだか背景が一瞬消えたりと若干怪しいですが、まあ正式対応を待ちましょう。&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/66069.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>Ms On for Community .NET Framework 2.0 ASP.NET AJAX</title><link>http://blogs.wankuma.com/koka/archive/2007/01/31/60143.aspx</link><pubDate>Wed, 31 Jan 2007 20:34:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/01/31/60143.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/60143.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/01/31/60143.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/60143.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/60143.aspx</trackback:ping><description>&lt;BR&gt;
&lt;P&gt;今日19時からMSさんのLive Meetingってので「ASP.NET AJAX」についてのセミナーがありました。すっかり忘れてて30分遅刻（汗&lt;/P&gt;
&lt;P&gt;デモ中心でざっくりとASP.NET AJAXについて知りたい場合、非常に有用な内容でした。ちょっと残念なのはオンラインでのデモなので画面表示が若干遅くてあのカレンダーの動きがはっきり確認できなかったｗ&lt;/P&gt;
&lt;P&gt;やっぱり新しい機能っていうものは機能を把握している人から説明を受けるのが一番理解が早いとおもった。まあ一人であれこれ試しながら動かすのも醍醐味なんですけどね^^&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/60143.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ASP.NET AJAX Control Toolkitの誘惑</title><link>http://blogs.wankuma.com/koka/archive/2007/01/24/58234.aspx</link><pubDate>Wed, 24 Jan 2007 02:54:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/01/24/58234.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/58234.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/01/24/58234.aspx#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/58234.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/58234.aspx</trackback:ping><description>&lt;br /&gt;
&lt;p&gt;&lt;a href="http://ajax.asp.net/ajaxtoolkit/" target="_blank"&gt;ASP.NET AJAX Control Toolkit&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;コントロールが増えたみたいです。AutoComplete、Calendar、MaskedEdit、Tabsむむぅ。試したい。使いたい。とりあえずざっくり感想。&lt;/p&gt;
&lt;h4&gt;AutoComplete&lt;/h4&gt;
&lt;p&gt;ついにきました。自作する必要がなくなってちょっとうれし。&lt;/p&gt;
&lt;h4&gt;Calendar&lt;/h4&gt;
&lt;p&gt;PopupControlで作れるのだけにやけに動く。横にずれるずれるｗ&lt;/p&gt;
&lt;h4&gt;MaskedEdit&lt;/h4&gt;
&lt;p&gt;日付や金額や日時の区切り文字をあらかじめテクストボックスに表示＆入力制限を行うことができるコントロール。&lt;/p&gt;
&lt;h4&gt;Tab&lt;/h4&gt;
&lt;p&gt;どうみてもタブですな。&lt;/p&gt;
&lt;p&gt;どんどんコントロールが充実していきます。というか最近本当にJavascriptを書かなくなって若干不安^^;&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/58234.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ASP.NET Ajaxメモ3</title><link>http://blogs.wankuma.com/koka/archive/2007/01/20/57267.aspx</link><pubDate>Sat, 20 Jan 2007 14:17:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/01/20/57267.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/57267.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/01/20/57267.aspx#Feedback</comments><slash:comments>101</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/57267.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/57267.aspx</trackback:ping><description>&lt;br /&gt;
&lt;h4&gt;ASP.NET AJAX Control Toolkitをユーザコントロール内に含めてみる。&lt;/h4&gt;
&lt;p&gt;UpdatePanel+ModalPopupExtender+Panel+ボタンのコントロールどもを使ったユーザコントロールを作ってみました。ユーザコントロールの編集は何の問題もなく進みます。問題はそれをWebフォームで利用する際に起こりました。ちなみにユーザコントロールをWebフォームに追加するのって、ソリューションエクスプローラのユーザコントロールファイル（.ascx）をD&amp;Dでできるんですねぇ。タグのプレフィックスを勝手に登録してくれます。&lt;/p&gt;
&lt;p&gt;Webフォームをデザインモードにするとコントロールの描画エラーとなります。&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;ハンドルされない例外が発生しました。&lt;/p&gt;
&lt;p&gt;The control with ID&lt;/p&gt;
&lt;p&gt;'ModalPopupExtender1' requires a ScriptManager on the page. The ScriptManager must appear before any controls that need it.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;むむぅ。「ScriptManagerがないですことよ。おほほほほ」だそうです。予想としてはユーザコントロールのデザインを表示する際にRendar処理が内部でこっそりと実行されているはずなのですが、その際に&lt;b&gt;処理がユーザコントロールで完結している&lt;/b&gt;から親WebフォームにあるScriptManagerを見つけることができていないんですね。エラー表示のあるままWebフォームを実行するとユーザコントロールは親のScriptManagerを見つけて正常に動作しやがります。カッ&lt;/p&gt;
&lt;p&gt;じゃあユーザコントロール側にもScriptManagerを置いたらどうよ？と実際に配置してみてもデザインモードでのエラー表示はそのままに、今度は実行時にエラーがでます。しかもユーザコントロールのScriptManagerも見つけてくれてないorz&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;Only one instance of a ScriptManager can be added to the page. &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;ScriptManagerは１つかもっちゃだめですよね。&lt;/p&gt;
&lt;p&gt;そんなわけでせっかくユーザコントロールもデザインモード時に描画されるようになりましたが、Ajaxコントロールを内部に含めると駄目なことがわかりました。悲しい。&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/57267.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>koka</dc:creator><title>ASP.NET Ajaxメモ2</title><link>http://blogs.wankuma.com/koka/archive/2007/01/17/56724.aspx</link><pubDate>Wed, 17 Jan 2007 19:31:00 GMT</pubDate><guid>http://blogs.wankuma.com/koka/archive/2007/01/17/56724.aspx</guid><wfw:comment>http://blogs.wankuma.com/koka/comments/56724.aspx</wfw:comment><comments>http://blogs.wankuma.com/koka/archive/2007/01/17/56724.aspx#Feedback</comments><slash:comments>51</slash:comments><wfw:commentRss>http://blogs.wankuma.com/koka/comments/commentRss/56724.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/koka/services/trackbacks/56724.aspx</trackback:ping><description>&lt;BR&gt;
&lt;H4&gt;ASP.NET AJAX Control ToolkitのModalPopupコントロールについて。&lt;/H4&gt;
&lt;P&gt;ModalPopupで指定したパネル内にあるボタンやリンクボタンなどは、それをModalPopupコントロールのOKやキャンセルボタンに指定していなくても、１度クリックするとパネルが非表示になります。ただしそのボタンで処理を行うようにしている場合はしっかり処理は実行されます。&lt;/P&gt;
&lt;P&gt;モーダルダイアログ内で何らかの処理後、OKボタンをクリック！ってシナリオは結構ありそうなのでそのまま閉じないようにする方法を探してみたところ、ModalPopupコントロールにShowメソッドがありました。それをボタンイベント発生時に実行してみると見事に表示されたまま（厳密には非表示後の再表示？）になりました。&lt;/P&gt;
&lt;P&gt;さらにこれをUpdatePanelコントロールで囲ってやれば部分的にPostbackするようになるので使いどころが結構ありそうです。注意すべき点はUpdatePanelコントロールに含めるならばModalPopupコントロールでプロパティ指定しているコントロールをすべて含める必要があるということでしょうか。&lt;/P&gt;
&lt;P&gt;HTML部分（抜粋）&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt;&amp;lt;asp:Panel ID="PopupPanel" runat="server" Height="50px" Width="125px"&amp;gt;
 &amp;lt;asp:Label ID="Label1" runat="server" Text="Label"&amp;gt;&amp;lt;/asp:Label&amp;gt;&amp;lt;br /&amp;gt;
 &amp;lt;asp:Button ID="ReloadButton" runat="server" Text="Reload" OnClick="ReloadButton_Click" /&amp;gt;&amp;lt;br /&amp;gt;
 &amp;lt;asp:Button ID="OKButton" runat="server" Text="OK" /&amp;gt;
 &amp;lt;asp:Button ID="CancelButton" runat="server" Text="Cancel" /&amp;gt;
&amp;lt;/asp:Panel&amp;gt;
&amp;lt;ACT:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
 TargetControlID="PopupButton"
 PopupControlID="PopupPanel"
 OkControlID="OKButton"
 CancelControlID="CancelButton"
 BackgroundCssClass="modalBackground"
 DropShadow="false"
/&amp;gt;
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;ソース（抜粋）&lt;/P&gt;
&lt;BLOCKQUOTE&gt;&lt;PRE&gt; protected void ReloadButton_Click(object sender, EventArgs e)
 {
  Label1.Text = DateTime.Now.ToString();
  ModalPopupExtender1.Show();
 }
&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;ちなみにこれに似たコントロールにPopupControl があります。こちらはサンプルにあるようにカレンダーなどの入力補助コントロールを表示させるのによさそう。&lt;/P&gt;
&lt;P&gt;いや～ホント便利な世の中になりましたねぇ～&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/koka/aggbug/56724.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>