我正在这样的页面代码隐藏中创建一个文本框:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
TextBox test = new TextBox();
test.SkinkId = "MySkin";
placeHolder.Controls.Add(test);
}
在我的皮肤文件中我有这个:
<asp:TextBox
runat="server"
SkinId = "MySkin"
Width="400"
/>
为什么皮肤没有应用到控件。如果我在我的 aspx 页面中声明该控件,它工作正常,但如果我尝试以编程方式执行它,它就不起作用。
最佳答案
我知道这是一个旧线程。但我想分享我在类似情况下必须做的事情。对我有帮助的是在创建控件后使用 ApplyStyleSheetSkin(this)。
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
TextBox test = new TextBox();
test.SkinkId = "MySkin";
test.ApplyStyleSheetSkin(this); // <--
placeHolder.Controls.Add(test);
}
关于c# - 将皮肤应用于以编程方式创建的控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2825151/