在CheckBoxList的应用样式时listItems在CheckBoxList的应用样式时lis

2019-05-12 01:08发布

如何样式应用到CheckBoxList的listItems中。 不像其他的控制,如可在其中指定的中继器<ItemStyle>则似乎无法指定样式为每个单独的控制。

是否有某种解决办法吗?

Answer 1:

您可以通过编程将属性添加到时listItems如下。

假设你已经有了一个CheckBoxList的和要添加listItems中。 您可以在沿途为您的属性。

ListItem li = new ListItem("Richard Byrd", "11");
li.Selected = false;
li.Attributes.Add("Style", "color: red;");
CheckBoxList1.Items.Add(li);

这将使列表项文本显示为红色的颜色。 实验和乐趣。



Answer 2:

这似乎做到这一点,最好的方法是创建一个新的CssClass。 ASP.NET转化的CheckBoxList到表结构。

使用类似

style.css文件

.chkboxlist td 
{
    font-size:x-large;
}

Page.aspx

<asp:CheckBoxList ID="chkboxlist1" runat="server" CssClass="chkboxlist" />

会做的伎俩



Answer 3:

除了安德鲁的答案...

根据你放什么其他属性上CheckBoxListRadioButtonList ,也好,ASP.Net会采用不同的结构渲染输出。 例如,如果你设置RepeatLayout="Flow" ,也不会呈现为表,所以你必须要小心你在CSS文件中使用的后代选择。

大多数情况下,你可以可以做一个“查看源文件”您呈现的页面上,也许在几个不同的浏览器,并找出ASP.Net做。 有一种危险,虽然,服务器控件或不同的浏览器的新版本将呈现不同他们。

如果你想样式特定列表项或设置列表项不同,而不在增加的属性代码后,您可以使用CSS属性选择。 到唯一的缺点是,他们不是在IE6的支持。 jQuery的全面支持CSS 3样式属性选择,所以你很可能也将其用于更广泛的浏览器支持。



Answer 4:

您也可以在标记实现这一目标。

<asp:ListItem Text="Good" Value="True" style="background-color:green;color:white" />
<br />
<asp:ListItem Text="Bad" Value="False" style="background-color:red;color:white" />

Word样式将与警告属性“风格”来强调不元素“列表项”的有效属性。 ,但可根据需要反正项被格式化。



Answer 5:

你甚至可以有不同的字体样式和颜色的每个字。

<asp:ListItem Text="Other (<span style=font-weight:bold;>please </span><span>style=color:Red;font-weight:bold;>specify</span>):" Value="10"></asp:ListItem>


Answer 6:

public bool Repeater_Bind()
{
    RadioButtonList objRadioButton = (RadioButtonList)eventArgs.Item.FindControl("rbList");
    if (curQuestionInfo.CorrectAnswer != -1) {
        objRadioButton.Items[curQuestionInfo.CorrectAnswer].Attributes.Add("Style", "color: #b4fbb1;");
    }
}


文章来源: Applying Styles To ListItems in CheckBoxList