
ASP.NETで似たような画面を複数作るにあたって、
フォーム(デザイン?)の継承が出来たらなぁと思っています。
C#(当方、C#の経験しかありません(--;) )ですと
Form1にButtonコントロールを貼り付けて、Form2からForm1を継承すると
Form1のButtonコントロールを継承出来ますよね。(デザイナ上も表示される)
ASP.NETでもそういったことが出来ないでしょうか?
現在、下のような状態です。
no2からno1を継承しようとしています。
違うんだろうなということは分るのですが
インターネットで調べても分からないので
「こんな感じだろ!」という独断と偏見で作りました…^^;
=======================================
【 no1.aspx 】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="no1.aspx.cs" Inherits="xxx.no1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>無題のページ</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<!-- ボタンを貼ってみました -->
<asp:Button ID="Button1" runat="server" BackColor="#FFC0FF" BorderColor="Blue" Text="Button" />
</div>
</form>
</body>
</html>
【 no2.aspx 】
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="no2.aspx.cs" Inherits="xxx.no1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>無題のページ</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<!-- Inheritsに"xxx.no1"と記述したので、no1で貼ったボタンが表示されたら嬉しい… -->
</div>
</form>
</body>
</html>
=======================================
えー…、no2を実行しても真っ白画面でした。
出来れば継承したものがno2のデザイナ上にも表示されて欲しいのですが…。
また
「そういう方法はないけど、こういう方法ならあるよ」
や
「ASP.NETで似たような画面を複数作る場合は普通こうするんだよ」
ということがあれば教えて頂けたらなと思います。
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
class1.aspxは動的コンパイル時に、class1.aspx.cs(裏コード)が生成した"class1クラス"("class1クラス"はさらにSystem.Web.UI.Pageを継承している)しますので、class2.aspxで、class1を継承すると、class1.aspxの基底クラスを継承したことになり、class1.aspxが生成したクラスは継承できません。
asp.netで共通UIのページを作るときは、「マスターページ」(共通ページを作る場合)か、「ユーザコントロール」(共通部品を作る場合)を使うのが常套手段です。
回答ありがとうございます。
>class1を継承すると、class1.aspxの基底クラスを継承したことになり
Σ(´д`;)な、なるほど。。。ここが分かっていませんでした。
勉強になります。
「マスターページ」…探し求めていたのはまさにコレです!
無事にUI部分は共通化できました。ありがとうございました。
よろしければコチラもお願い致します。。。
【ASP.NET】マスターページに配置されたボタンのイベントを拾いたい
http://oshiete1.goo.ne.jp/qa5232630.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
asp.NET初心者です。「 ’Contex...
-
x.aspxとx.aspx.vbの値の受渡に...
-
MFCでグリッド
-
セッションIDを取得したい
-
getParameterで値が取得できず...
-
JSPで使用不可
-
前の画面の情報を保持するには?
-
HTMLだけでボタン作成
-
INPUTのボタン周囲のスペース
-
サーバー上の全セッション変数...
-
コネクション・セッション・ト...
-
ASP.NET(VB)でのデータグリッド...
-
WScript??
-
HSPでIEを操作したいのですが
-
複数のヤフーIDの画面ウィンド...
-
SPREADでカーソルの位置を1行目...
-
アドレスバーのないウィンドウ...
-
ASP.NET
-
ASP.NET ブラウザでボタンが表...
-
PHPからWindowsログインユーザ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
asp.NET初心者です。「 ’Contex...
-
【C言語】JPEGのEXIF情報を書き...
-
複数の aspx で一つのクラスの...
-
サーバOSとクライアントOSの判...
-
x.aspxとx.aspx.vbの値の受渡に...
-
【ASP.NET】フォームの継承は出...
-
URI引数の書き換え
-
コネクション・セッション・ト...
-
Accessの画面更新を一時的に停...
-
VBAで一時中断したプログラムの...
-
aspxをhtmlに変換する方法について
-
コンピュータへの接続数が最大...
-
getParameterで値が取得できず...
-
Eclipseでクリーンが出来ない
-
c# 文字列の最後から1文字削除...
-
Webページ上のボタン等の位置を...
-
DVD-Rの「セッションを閉じる」...
-
ただいま勉強始めたての初心者...
-
複数選択のListBoxでClickイベ...
-
メール添付されたPDFファイルが...
おすすめ情報