繁体   English   中英

asp.net 3.5自定义webcontrol中控件的设置样式

[英]asp.net 3.5 settings styles on controls in a custom webcontrol

我在自定义Web控件中向控件添加样式属性时遇到问题。 下面是一个非常简单的自定义Web控件,只是为了说明问题:

[ParseChildren(true)]
[ToolboxData("<{0}:SomeControl runat=\"server\"></{0}:SomeControl>")]
public class SomeControl : WebControl
{
    public CheckBox MyCheckbox { get; set; }

    protected override void CreateChildControls()
    {
        MyCheckbox = new CheckBox { Text = "Here is some text" };

        MyCheckbox.Style.Add("some", "style");
        Controls.Add(MyCheckbox);

        base.CreateChildControls();
    }
}

在页面上使用时,我得到以下输出:

<span><span style="some:style;"><input id="ctl03" type="checkbox" name="ctl03" /><label    for="ctl03">Here is some text</label></span></span>

为什么span标记上的style属性而不是输入标记?

以下是两种向复选框添加样式的方法,您使用的方式将尝试为检测到的浏览器UserAgent呈现,从而将复选框包装在具有style属性的span中。

另一种方法是将样式属性直接添加到复选框。

MyCheckbox.InputAttributes.Add("some", "style");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM