0

ラベルが付いたユーザー コントロール ページがあり、ラベルのonLoadコードは C# で記述されています。ユーザーコントロールを追加したページにはボタンがあります。ボタンの押下に応じてラベルを変更するようにユーザーコントロールをコーディングする方法はありますか? これは、C# のユーザー コントロール ページから実行することをお勧めします。これが何かに影響するかどうかはわかりませんが、ユーザーコントロール以外のページにはVBでコードビハインドが行われています。

これについての洞察をありがとう。

4

1 に答える 1

2

Page.aspx のコードに、ボタン クリック用の宣言型イベント ハンドラーを追加し、その中に次のコードを他のロジックと一緒に追加します。

C#

Protected void Button_OnClick(object sender, eventargs e)
{
   //Other logic responding to the click event within the page
   LabelUserControl.PageButton_Click(sender, e); 
}

VB.NET

Protected Sub PageButton_Click(sender As Object, e As System.EventArgs) Handles PageButton.Click 
   LabelUserControl.PageButton_Click(sender, e)
End Sub

または (ユーザー コントロール ラベルの変更がクリックに対する唯一の応答である場合)-

C#

Protected void Page_Load(object sender, eventargs e)
{
   PageButton.Click += LabelUserControl.PageButton_Click;
}

VB.NET

Sub Page_Load(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    AddHandler PageButton.Click, AddressOf LabelUserControl.PageButton_Click
End Sub

ユーザーコントロールで-

public void PageButton_Click(object sender, eventargs e)
{
  // change label text
}

メソッドは、ページからアクセスできるようにパブリックにする必要があります。

于 2013-01-16T00:42:12.540 に答える