C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[12]: イベントの都度、リロードする。


(過去ログ 31 を表示中)

[トピック内 15 記事 (1 - 15 表示)]  << 0 >>

■14897 / inTopicNo.1)  イベントの都度、リロードする。
  
□投稿者/ あたふた (1回)-(2008/02/28(Thu) 15:54:12)

分類:[ASP.NET (VB)] 

2008/02/28(Thu) 15:59:49 編集(投稿者)
2008/02/28(Thu) 15:59:40 編集(投稿者)

初めまして。
突然、一度も経験の無いASP.NET(VB)のテストに投入されたのですが、あきらかに動作に違和感を覚えるのですが、対応方法がわからず困っています。
製造者も初めての言語で原因がわからないというのでこちらに駆け込みました。宜しくおねがいします。

使用言語は、Visual Studio 2005で .NET Framework バージョン:2.0.50727を使用しています。
その他は、グレープシティ社からのインプットマンとスプレッドを使用しています。

現象は次の通りです。
1.ドロップダウンリストが親子で二つ用意されているのですが、親を選択する度に画面が一度白くなり再描画します。
2.ポップアップ画面を表示し、そのポップアップ画面の内容を反映する場合、先ず、ポップアップ画面を表示する際に親画面が白くなり再描画されてからポップアップ画面が表示されます。
  その後、内容を親画面に反映する際にも親画面が白くなってから再描画されます。

上記の親画面のイベントの都度、起こる画面が白くなってから再描画される事を解消する方法を教えて下さい。

原因はイベント毎のロジックでは無く、根本的設定の問題では無いかと思っています。
ご教授御願いします。
引用返信 編集キー/
■14903 / inTopicNo.2)  Re[1]: イベントの都度、リロードする。
□投稿者/ Mr.T (191回)-(2008/02/28(Thu) 17:06:25)
Mr.Tです、こんにちは。

> 現象は次の通りです。
> 1.ドロップダウンリストが親子で二つ用意されているのですが、親を選択する度に画面が一度白くなり再描画します。
> 2.ポップアップ画面を表示し、そのポップアップ画面の内容を反映する場合、先ず、ポップアップ画面を表示する際に親画面が白くなり再描画されてからポップアップ画面が表示されます。
>   その後、内容を親画面に反映する際にも親画面が白くなってから再描画されます。
>
> 上記の親画面のイベントの都度、起こる画面が白くなってから再描画される事を解消する方法を教えて下さい。
> 原因はイベント毎のロジックでは無く、根本的設定の問題では無いかと思っています。
> ご教授御願いします。

多分DropDownListのAutoPotBackプロパティがTrueになっていませんか。
変更があったたびに、PostBackされますから、画面の再描画が行われます。

AutoPostBack = Falseにすれば、変更したことによるPostBackは行われません。
引用返信 編集キー/
■14911 / inTopicNo.3)  Re[2]: イベントの都度、リロードする。
□投稿者/ あたふた (3回)-(2008/02/28(Thu) 17:30:36)
No14903 (Mr.T さん) に返信

Mr.T様。
ありがとうございます。

> 多分DropDownListのAutoPotBackプロパティがTrueになっていませんか。
> 変更があったたびに、PostBackされますから、画面の再描画が行われます。
>
> AutoPostBack = Falseにすれば、変更したことによるPostBackは行われません。

親子のDropDownListの為、親を選択後、子のDropDownListを設定します。
なのであくまでも内容は最新にしたいのです。
現在のプログラムのDropDownListのAutoPotBackプロパティをFalseにすると
確かに再描画は無くなりました。
しかし、子のDropDownListの内容も最新になりません。
(子のDropDownListの内容は親を元にデータベースより取得する必要があります。)

体感として
イベントが発生しても画面を真っ白にせずに変更箇所だけが変わるようにしたいのです。

表現がまずくすみません。


引用返信 編集キー/
■14921 / inTopicNo.4)  Re[3]: イベントの都度、リロードする。
□投稿者/ Mr.T (192回)-(2008/02/28(Thu) 18:09:27)
Mr.Tです、こんにちは。

> 体感として
> イベントが発生しても画面を真っ白にせずに変更箇所だけが変わるようにしたいのです。

その場合だと、Microsoft Ajaxを利用することになるかと思います。
例えば、参考例だと
http://www.atmarkit.co.jp/fdotnet/ajaxlib/ajaxlib01/ajaxlib01_01.html

本家は、ここ。
http://www.asp.net/ajax/

んでも、普通Webアプリケーションだと、画面が再描画されるのは当たり前ですよ。
Ajaxを使って部分描画ってのはありでしょうけど、基本は全体描画です。
ここらへんは、Windowsアプリケーションなんかとは、異なりますが、その点は
認識されてます?

>製造者も初めての言語で原因がわからないというのでこちらに駆け込みました。宜しくおねがいします。

原因もなにも、そういうもんですよ>Webアプリケーション
引用返信 編集キー/
■14925 / inTopicNo.5)  Re[4]: イベントの都度、リロードする。
□投稿者/ 片桐 (73回)-(2008/02/28(Thu) 18:25:37)
片桐 さんの Web サイト
WEBアプリの場合、画面にあるものが一枚の紙の上にあって、何か処理をしてイベントが発生するたびに、紙を広げなおし部品を配置しなおしている、と基本考えます。

なので、そのちらつきを押さえるために、「この部品だけ新しく置き直す」という技術=AJAXを使います。

ただ、開発環境や本番環境の制限でそれが使えないことがあるかもしれません。
そんなときには超反則ですがフレーム分けしたりIFRAMEタグを使うとかして逃げる手もありです。
引用返信 編集キー/
■14927 / inTopicNo.6)  Re[4]: イベントの都度、リロードする。
□投稿者/ あたふた (4回)-(2008/02/28(Thu) 18:44:48)
No14921 (Mr.T さん) に返信

Mr.T様
ありがとうございます。

> んでも、普通Webアプリケーションだと、画面が再描画されるのは当たり前ですよ。
> Ajaxを使って部分描画ってのはありでしょうけど、基本は全体描画です。
> ここらへんは、Windowsアプリケーションなんかとは、異なりますが、その点は
> 認識されてます?

再描画自体の認識はしております。
ですが、他のサイトで公開されているASP.NETのサンプルを実行した時には違和感を覚える程の画面が真っ白になるレスポンスにははならなかったので方法があるのではないかと思ったのです。

AJAXなくしては実現できないのであればAJAXを検討します。
引用返信 編集キー/
■14930 / inTopicNo.7)  Re[5]: イベントの都度、リロードする。
□投稿者/ 囚人 (289回)-(2008/02/28(Thu) 20:05:05)
>ですが、他のサイトで公開されているASP.NETのサンプルを実行した時には違和感を覚える程の画面が真っ白になるレスポンスにははならなかったので方法があるのではないかと思ったのです。

「DropDownList を選択しただけでリクエスト」するという挙動が一般的ではないので違和感を覚えたのでしょう。
安易にそのような事(親子のDropDownListの為、親を選択後、子のDropDownListを設定)をせず、たとえば画面を分けるなどの工夫を凝らせばいくらかマシです。

でなければ、部分更新(Ajax)しかないでしょう。

引用返信 編集キー/
■14949 / inTopicNo.8)  Re[5]: イベントの都度、リロードする。
□投稿者/ Mr.T (194回)-(2008/02/29(Fri) 09:06:58)
> ですが、他のサイトで公開されているASP.NETのサンプルを実行した時には違和感を覚える程の画面が真っ白になるレスポンスにははならなかったので方法があるのではないかと思ったのです。

どの程度の時間、再描画中になるのかわかりませんが、真っ白になる時間が
長すぎるというのであれば、その裏で時間のかかる処理をしている可能性は
ないか調査してみる必要があると思いますよ。



引用返信 編集キー/
■14950 / inTopicNo.9)  Re[6]: イベントの都度、リロードする。
□投稿者/ あたふた (5回)-(2008/02/29(Fri) 09:14:19)
片桐様。
囚人様。
Mr.T様。

いろいろアドバイスありがとうございます。
ご意見頂いてから現在、AJAXの取り入れ作業中です。
返事が遅くなりすみません。
結果が出せるまでにはまだ時間がかかります。

引用返信 編集キー/
■14987 / inTopicNo.10)  Re[7]: イベントの都度、リロードする。
□投稿者/ あたふた (6回)-(2008/02/29(Fri) 19:34:04)
AJAXを組み込み試してみました。
レスポンスの速さは変わりませんでしたが、画面が真っ白になるという状況の回避は確認できました。

画面が真っ白になった原因も判明しました。
インプットマンを使用していたのですが、標準ツールを使用すると画面が真っ白にもならず、ストレスを感じるレスポンスも回避しました。

アドバイスありがとうございました。
解決済み
引用返信 編集キー/
■14991 / inTopicNo.11)  Re[8]: イベントの都度、リロードする。
□投稿者/ Mr.T (195回)-(2008/02/29(Fri) 21:37:27)
Mr.Tです、こんにちは。

> インプットマンを使用していたのですが、標準ツールを使用すると画面が真っ白にもならず、ストレスを感じるレスポンスも回避しました。

これちょっと気になりました。
InputManをどういう風につかったら、そういう現象になったってことでしょう?
よかったら、教えていただけないでしょうか?
解決済み
引用返信 編集キー/
■14995 / inTopicNo.12)  Re[9]: イベントの都度、リロードする。
□投稿者/ あたふた (7回)-(2008/02/29(Fri) 23:44:49)
No14991 (Mr.T さん) に返信
Mr.T様。
こんばんは。

> これちょっと気になりました。
> InputManをどういう風につかったら、そういう現象になったってことでしょう?
> よかったら、教えていただけないでしょうか?

どういう風にと聞かれると普通に・・・となるのですが、お聞きしてる事とズレていたら申し訳ありません、経緯は以下の通りとなります。
(ソースを見た限りでは特別な事をしているとは思えませんでした。)

一番コントロールの少ない画面で検索画面がありました。
コントロールは標準ツールのボタンをいくつか配置し(戻るボタンなどに使用)
条件入力コントロールとして、親となる部門用のInputManのコンボボックス、子となる担当者用のInputManのコンボボックス、いずれも入力不可のコンボボックスです。
それと、InputManの日付のテキストボックスを自と至で配置となります。

親のコンボボックスをクリックするだけの動作でレスポンスが悪いのでこれを改善したく検討を始めました。
最初はコンボボックスのみ標準ツールに変更したのですが、レスポンスはあまり変わりませんでした。

InputManのコントロールが一つでも存在するだけでレスポンスが遅くなると判断しています。

日付のテキストボックスも標準ツールのテキストボックスに変更しました。
レスポンスはストレスを感じないものになりました。
ですが画面は一瞬白くなりましたのでこちらの回避はAJAXで対応しました。

クライアント・コールバックの方法も検討しましたが、技術力が満たない為途中であきらめました。

SPREADのようにもしかしたらどこかのプロパティの設定次第では上記の事を避けられるのかもしれませんが、当方では把握しておりません。
グレープシティへもまだ問い合わせまで行っておりません。

解決済み
引用返信 編集キー/
■15002 / inTopicNo.13)  Re[10]: イベントの都度、リロードする。
□投稿者/ Mr.T (196回)-(2008/03/01(Sat) 10:50:28)
2008/03/01(Sat) 10:50:41 編集(投稿者)

Mr.Tです、こんにちは。

> InputManのコントロールが一つでも存在するだけでレスポンスが遅くなると判断しています。

InputManは利用したことがないので、私も良くわからない部分が多いのですけど、
これは何か別の原因がありそうな気がします。
とはいえ、これだけの情報では私の知識ではぼんやりとした憶測しか
思い浮かびません。

> 日付のテキストボックスも標準ツールのテキストボックスに変更しました。
> レスポンスはストレスを感じないものになりました。
> ですが画面は一瞬白くなりましたのでこちらの回避はAJAXで対応しました。

これはWebアプリケーションであれば、想定される動作でしょうね。

> SPREADのようにもしかしたらどこかのプロパティの設定次第では上記の事を避けられるのかもしれませんが、当方では把握しておりません。
> グレープシティへもまだ問い合わせまで行っておりません。

なるほど、SPREADは回避できたのですね。
もし可能であれば、何が原因であったのかを知りたいところです。
解決済み
引用返信 編集キー/
■15058 / inTopicNo.14)  Re[11]: イベントの都度、リロードする。
□投稿者/ あたふた (8回)-(2008/03/03(Mon) 18:14:04)
No15002 (Mr.T さん) に返信
> 2008/03/01(Sat) 10:50:41 編集(投稿者)
>
> もし可能であれば、何が原因であったのかを知りたいところです。

グレープシティ社より回答をすぐ頂く事ができました。
最終パッチが出ているのを気づいていませんでした。
今のところ、この最終パッチでのレスポンスが限界との事でしたが、かなり解消されていました。


引用返信 編集キー/
■15059 / inTopicNo.15)  Re[12]: イベントの都度、リロードする。
□投稿者/ Mr.T (197回)-(2008/03/03(Mon) 18:46:01)
> グレープシティ社より回答をすぐ頂く事ができました。
> 最終パッチが出ているのを気づいていませんでした。
> 今のところ、この最終パッチでのレスポンスが限界との事でしたが、かなり解消されていました。

なるほど、パッチがあったんですね。
解決済みなのに、わざわざありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -