0
  1. テキストボックス、カレンダー、ボタンを持つasp.netでユーザーコントロールを作成しました。
    1. そのボタンのクリックイベントでカレンダーを表示し、カレンダーのonselectionchangedイベントで選択した日付をテキストボックスに渡します。
    2. 今、実行時にこのユーザー コントロールを追加する .aspx ページがあります。
    3. ユーザーコントロールが追加されますが、カレンダーを表示するボタンのクリックイベントが発生しません。

どうした?デザイン時にそのユーザー コントロールを追加すると、正常に動作します。しかし、実行時に追加すると機能しません。

<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Dates.ascx.cs" Inherits="Date"%>

//created a public object named 'users' of control class
public partial class View_now : System.Web.UI.Page
{
public Control users;  
}

//loaded the user control in page load event
protected void Page_Load(object sender, EventArgs e)
{  
    users = LoadControl("~\\Dates.ascx");
}


//applied the user control to a panel
protected void Button2_Click(object sender, EventArgs e)
{
    Panel2.Controls.Add(users);
}

ユーザーコントロールのボタンをクリックすると、クリックイベントが発生しません。

4

1 に答える 1

1

Page_Load() ではなく Page_Init() 中にコントロールを追加します。これでうまくいくはずです。

于 2012-05-27T08:56:26.697 に答える