如何在列表中对listitem进行着色

时间:2009-08-06 10:50:21

标签: c# asp.net listbox

您好我在我的代码中使用了asp:listbox。

  <td>
   <asp:ListBox id="ddlWhereStudy" runat="server" rows="4"></asp:ListBox>
    </td>

我想有条件地为列表框列表项着色。请参阅以下代码:

private void FillStudyWhereDropDown()       
{
                  XmlNodeList objNodeList = FinalDoc.SelectNodes("//root/tcm:ListKeywords[@Type='StudyWhere']/child::tcm:Item", namespaceManager);
                  ddlWhereStudy.Items.Clear();
                  ddlWhereStudy.Items.Add(new ListItem(ResourceFile.GetResourceString("c_AdvisorOptionDefault")));
                  for (int i = 0; i < objNodeList.Count; i++)
                  {
                        string[] parts = objNodeList[i].Attributes["Title"].Value.Split('_');
                        ListItem li = new ListItem(parts[1], parts[2]);
                        ddlWhereStudy.Items.Add(li);
                        if (parts[3] == "B")
                        {
                              li.Attributes.Add("Style", "Color: 'RED'");          
                        }
                  }
}           

当我使用选择时,上面的代码工作正常,但它不适用于 asp:ListBox

请建议!

1 个答案:

答案 0 :(得分:3)

从此代码列表项目4和8是红色,其他具有默认颜色

for (int count = 0; count < 10; count++)
    {
        ListItem li = new ListItem();
        li.Text = count.ToString();
        li.Value = count.ToString();
        if (count == 4 || count == 8)
        {
            li.Attributes.Add("style", "Color: Red");
        }
        lst.Items.Add(li);
    }