我在重写的CreateChildControls()方法中动态创建控件。我想向容纳这些控件的HTMLTable控件添加CSS类(这些控件将添加到正在创建的HtmlTableCells中,并添加到HtmlTableRows中,然后再添加到HTMLTable控件中)。

但是,HTMLTable控件没有其他控件那样具有CSSClass属性。 IOW,我可以这样做:

boxDeptDivName = new TextBox();
boxDeptDivName.CssClass = "finaff-webform-field-input";


...但不是这个:

HtmlTable dynamicTable = new HtmlTable();
dynamicTable.CSSClass = "finaff-webform-table"; // <= won't compile; there is no CSSClass property for HTMLTable


那么是否可以通过其他方式将CSSClass添加到动态创建的HTMLTable控件中?

更新

李斯特先生的建议似乎是一个好建议。但是到底是怎么做到的。是这样的吗:

HtmlTable tbl = null;
tbl.Attributes.CssStyle.Add("class", "platypus-webform-table");


最佳答案

假设这些是标准ASP.NET HtmlControl,则它们具有属性Attributes,这是一个集合,您可以向其添加新属性,如下所示:

要么

tbl.Attributes.Add("class", "platypus-webform-table");


要么

tbl.Attributes["class"] = "platypus-webform-table";


希望这可以帮助!

顺便说一下,在进行更新时,您不应尝试访问null对象的属性;)

关于html - 是否可以将CSSClass添加到动态创建的HTMLTable中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29612810/

10-10 00:01