アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB.net2003 webアプリケーション 戻る機能。
いわゆるIEの左上にある「戻る」ボタンをVB.netのメソッドで行いたいのですが。教えてくださいませ。

もう一つ、画面の移動ですが、今は
Server.Transfer("Logon.aspx")
のようにしているのですが、VBっぽく
Dim f As New webForm1
f.show(みたいなメソッド)
で表示できないでしょうか?

A 回答 (3件)

簡単なサンプル



ソリューションの中に
・WebForm1.aspx
・WebForm2.aspx
を用意


それぞれの画面にボタンを張りますが、WebForm1とWebForm2のボタン種類が異なります。
以下をしっかり読みながら、画面にボタンを作成してくだあさい。


WebForm1
  .画面に[ツールボックス]の[Webフォーム]の[Button]を張ります。
  画面に張ったボタンをダブルクリックします。
  クリックイベントにソースを埋め込みます。
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
      Server.Transfer("WebForm2.aspx")
    End Sub

WebForm2
  .画面に[ツールボックス]の[HTML]の[Button]を張ります。
  [デザイン]モードから[HTML]へ切り替えます(ショートカットキー:Ctrl+PageDown)
  ↓こんな感じだと思います
    <INPUT style="Z-INDEX: 102; LEFT: 0; WIDTH: 100px; POSITION: absolute; TOP: 0; HEIGHT: 100px" type="button" value="Button">
  それをイベントを呼ぶように改造します(onclick部分を追加)
    <INPUT style="Z-INDEX: 102; LEFT: 0; WIDTH: 100px; POSITION: absolute; TOP: 0; HEIGHT: 100px" type="button" value="Button" onclick="history.back()">

この回答への補足

すばらしい、できました!ありがとうございました。

補足日時:2005/02/21 14:38
    • good
    • 0

>何かのメソッドで前の画面に戻りたい


「戻る」「進む」の処理は、クライアントでの出来事です。
ASP.NETはサーバ処理なので、要求がきて処理を行うことではないので、根本的にできません。

ASP.NETとしてできることは、クライアントに「戻るスクリプト」を発行するボタンをWEB上に用意してあげるだけで、実際に処理を行うのはクライアントです。

よって「メソッド一つで実現したい」という要望は、ASP.NETでは実質的不可能です。



ついでにですが、もう一つの質問
「new form」
ですが、
「new <自分で作成したクラス>」
みたいにして、自分でクラス化をしてあげない限りできません。
内部では結局「Server.Transfer」を呼び出す処理になると思います。

この回答への補足

ありがとうございます。
>クライアントに「戻るスクリプト」を発行するボタンをWEB上に用意してあげる
というコードはどのように記述すればよいでしょうか?

補足日時:2005/02/19 15:10
    • good
    • 0

.NET Frameworkのヘルプで


「サーバー コントロールのサンプル」
で検索をかけ
「ポストバック イベントのサンプル」
を見てください。

コードがそのまんま出ています。

この回答への補足

ごめんなさい、初心者の私にはよくわかりません。おっしゃられているサンプルコードはASP.netっぽいでしょうか?
できれば以下のようなソースで
Private Sub btn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn.Click

Server.Transfer("login.aspx")'はlogin.aspxに移動

’何かのメソッドで前の画面に戻りたい

End Sub

したいのですが・・・

補足日時:2005/02/18 14:13
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています