• 締切済み

VB.NETでMessageBoxを表示したいのですが

Visual Studio .NETでWebアプリケーションをしております。 言語はVB.NETです。 メッセージボックスを表示しようとすると、エラーが出てしまうのですが、 Msgboxを表示するにはどうすればいいのでしょう。 エラーメッセージは 「アプリケーションが UserInteractive モードで実行されていないときに、 モーダル ダイアログまたはフォームを表示することはできません。 サービス アプリケーションからの通知を表示するには、 ServiceNotification または DefaultDesktopOnly スタイルを指定してください。 」 といったサーバエラーです。 そこでUserInteractiveモードを調べてみると、 「このプロパティは、プロセスがサービス プロセスとして実行されている場合、または Web アプリケーション内から実行されている場合にだけ false になります。 UserInteractive が false の場合は、ユーザーが対話するための GUI が存在しないため、 モーダル ダイアログまたはメッセージ ボックスは表示しないでください。」 ということが書いてありました。 ちなみにWindowsアプリならVB.NETでもMsgbox関数で簡単に表示できたのですが。。 どこかで何か設定しなければならないのでしょうか。 お分かりの方、教えてください。 よろしくお願い申し上げます。

みんなの回答

  • godori
  • ベストアンサー率50% (2/4)
回答No.1

自信はありませんが、.NETのWEBアプリの場合、MsgBoxメソッドは使えません。 メッセージボックスのような見た目の物を表示するには、javascriptで「prompt,comfirm,alert」のようなダイアログボックスと言うものを表示させるのがいいと思います。 javascriptはわからない、覚えたくないと言う場合や、aspx.vbのファイルにロジックを集中させたい場合は、 Response.Redirect([URL],false)で別のウィンドウを表示させる方法もありますが、その場合、別ブラウザが起動する事になりますので、VBのMsgboxとは見た目も違うし、使い方もまったく違います。 ですので、msgboxを意地でも表示させるのではなく、他の手段で同じ結果を得るのがいいと思います。 例えば、ただメッセージを表示するだけならば、labelやtextboxをページに配置してそこに、メッセージ内容を表示させればいいと思います。 .NETのWEBアプリは、WEB系の知識がかなり必要で、今までのVBで出来た事を実現するには色々な工夫が必要だと思います。 WEBになじみの少ない方は、いろいろなホームページを見て、HTMLベースのアプリなりのユーザーインターフェイスに慣れ親しまれれば良いかと思います。 「VBでは出来たのに」、という考えはあまりしないほうがいいです。

関連するQ&A