1

私は、juiceUI ダイアログ div 内にある updatepanel にボタンを追加しました。ハイパーリンクをクリックすると、ダイアログが表示されます (コードを参照)。これは機能します。Button-Click イベントによるポストバックが成功した後、すべてのコントロールがスタイルを失います (Fresh-Squeezed を使用)。その理由がわかりません。注: コード ビハインドですべてのコントロールを生成したいと考えています。

 protected void Page_Load(object sender, EventArgs e)
{
    ScriptManager man = new ScriptManager();
    man.SupportsPartialRendering = true;

    this.Form.Controls.Add(man);

    HyperLink lnkOpen = new HyperLink(); lnkOpen.ID = "lnkOpen"; lnkOpen.Text = "open Dialog"; lnkOpen.CssClass = "open-dialog";
    this.Form.Controls.Add(lnkOpen);

    Juice.Dialog jDialog = new Dialog(); jDialog.ID = "jdialog";
    jDialog.Modal = true;
    jDialog.TargetControlID = "dialogItSelf";
    jDialog.AutoOpen = false;
    this.Form.Controls.Add(jDialog);

    UpdatePanel updPanel1 = new UpdatePanel(); updPanel1.ID = "upd1";        
    System.Web.UI.WebControls.Button buttonOK = new System.Web.UI.WebControls.Button(); buttonOK.ID = "button";
    buttonOK.Click += new EventHandler(buttonOK_Click);        
    updPanel1.ContentTemplateContainer.Controls.Add(buttonOK);

    Panel basicDialog = new Panel(); basicDialog.ID = "dialogItSelf"; basicDialog.CssClass = "basic-dialog";

    basicDialog.Controls.Add(updPanel1);

    this.Form.Controls.Add(basicDialog);

    this.Form.Controls.Add(
        new LiteralControl("<script>$( \".open-dialog\" ).click( function ( e ) {" +
    "e.preventDefault();" +
    "$( \".basic-dialog\" ).dialog( \"open\" );" +
        "});</script>")
        );
}

void buttonOK_Click(object sender, EventArgs e)
{
    (sender as System.Web.UI.WebControls.Button).Text = "clicked";
}
4

0 に答える 0