簡體   English   中英

如何通過代碼隱藏使復選框創建TemplateField?

[英]How Do I Make a TemplateField with Checkbox Through Code-behind?

如何通過C#代碼隱藏向我的DetailsView對象添加帶有復選框的模板字段? 我在閱讀asp.net代碼時遇到了麻煩。

我已經使用分配給屬性的值實例化了TemplateField和CheckBox對象。 但是當我使用Fields.Add()時,復選框不顯示。

    TemplateField tf_ForMalls = new TemplateField();
    tf_ForMalls.HeaderText = "For Malls";

    CheckBox chk_ForMalls = new CheckBox();
    chk_ForMalls.ID = "chkDelete";

    tf_ForMalls.ItemTemplate = chk_ForMalls as ITemplate;

    dv_SpotDetail.Fields.Add(tf_ForMalls);

您將需要一個從ITemplate派生的自定義類來實現此功能

public class MyTemplate : ITemplate
{
    #region ITemplate Members

    public void InstantiateIn(Control container)
    {
        CheckBox chk = new CheckBox();
        chk.ID = "chk";
        container.Controls.Add(chk);
    }

    #endregion
}

然后在代碼中

TemplateField tf = new TemplateField();
tf.ItemTemplate = new MyTemplate();
detvw.Fields.Add(tf);

您可以讓構造函數傳入“control id”的參數或指定ListItemType

希望這可以幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM