2012-03-09 25 views
1

コンパイル済みのDLLがない既存のサイトがあります。すべてが.aspx.vbおよび.aspxファイルです。既存のサイトにボタンを追加します

最初の質問は、私は

<%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" 
MaintainScrollPositionOnPostback="true" AutoEventWireup="true" 
CodeFile="ThisPageName.aspx.vb" Inherits="ThisPageName" %> 

を見ることができるということですしかし、ここで、それは継承されたファイルはありますか?私はより多くのコンパイル多様で、私はこの他のソースファイル

Partial Class ThisPageName 

しかし、部分クラスの他の半分が発見されるを見ることができますC#で動作しますか?

Compiler Error Message: BC30506: Handles clause requires a WithEvents variable 
defined in the containing type or one of its base types. 

そして

Protected Sub btnWasHidden_Click(ByVal sender As Object, ByVal e As System.EventArgs) 
Handles btnWasHidden.Click 

私はこれを取得:

質問の理由は、私が<asp:button>コメントアクティベートしようとしているが、私は、イベントハンドラを追加したときということです

E:\path\path\htdocs\ThisPageName.aspx.vb(304) : error BC30451: 
Name 'btnWasHidden' is not declared. 
+0

ものはタグであり、すでにタグでそれらを持っているので、私は、あなたのタイトルから「vb.net ASP.Net」を削除しました。 –

答えて

1

コンパイルされていないサイトについてはわかりませんが、通常はページクラスはpagename.aspx.designer.vbファイルに保存されます。このファイルは、マークアップ(.aspx)ページを変更するときに更新されます。

Visual Studioのコンテキスト外でこれを行う場合は、デザイナーファイルまたはメインクラスファイル(コードビハインド)のいずれかで、コントロールのメンバ変数を手動でクラスに追加する必要があります。

EDIT:ここ.aspx.designer.vbファイルは、典型的には、サーバー側のコントロールのメンバー変数を生成する方法である:

Protected WithEvents <control_id> As <full namespace and type of control> 

例えば

Protected WithEvents TextBox1 As Global.System.Web.UI.WebControls.Button 

通常のコードビハインドの.vbファイルでそのパターンに従うだけで動作するはずです。あなたのケースでは

私はそれがなると信じて:

Protected WithEvents btnWasHidden As Global.System.Web.UI.WebControls.Button 
+0

.aspx.designer.vbファイル(discountasp.net FTP)が表示されません。このファイルには、Initおよびコードワイヤアップコードが含まれているはずです。どのように手動で.aspx.vbファイルに追加するのですか? – RichardTheKiwi

+0

@Richardakacyberkiwi私は答えにサンプルデザイナーコードを追加しました。それはあなたを助けますか? – GregL

+0

@Richardakacyberkiwi '@ Page'ディレクティブは' true'に等しい 'AutoEventWireup'プロパティを持っているので、イベントハンドラを"ワイヤアップ "するためにC#のようにInitにコードを入れる必要はありません。代わりに、イベントハンドラの 'Handles'キーワードがあなたのために行います。 – GregL

関連する問題