Page_Loadメソッドでは、さまざまな条件に基づいて、いくつかのコントロールを作成します。これらのコントロールにサーバー側のコードを登録したいと思います。ただし、最後の部分では、コントロールをサーバーコントロールとして宣言する必要があります。これは通常runat=serverによって行われますが、C#コードでこの属性を設定する方法がわかりません。myControl.Attributes.Add( "runat"、 "server")はこのトリックを実行しません。これは機能します。つまり、クリックすると「test」メソッドが呼び出されます。
<asp:LinkButton ID="LinkButton1" runat="server" OnClick="test">testtext</asp:LinkButton>
これは機能しません:
LinkButton lb = new LinkButton();
lb.ID = "LinkButton1";
lb.OnClientClick = "test";
lb.Text = "testtext";
lb.Attributes.Add("runat", "server");
それをクリックするとページが読み込まれますが、test-methodが呼び出されません。
ヒントはありますか?