根据条件在下拉列表中显示特定项目

时间:2010-09-21 13:27:41

标签: c# asp.net drop-down-menu

我有一个下拉列表,其中包含四个选项:

  • 评价
  • 待审核
  • 提交

我需要根据某些条件在下拉列表中仅显示特定项目。 我的意思是有时只有2件

  • 评分

有时候有3个项目

  • 评分
  • 待审核

有时候所有物品。 我怎样才能做到这一点?我正在使用C#。

3 个答案:

答案 0 :(得分:1)

if (condition)
{
     ddlList.Items.Add(new ListItem("Text", "Value"));
}

答案 1 :(得分:0)

在下拉列表的DataBound事件中,您可以遍历Items集合并删除任何需要过滤的项目。唯一真正的诀窍是在集合中向后循环,以便您可以删除项目而不会弄乱迭代器位置。

Private Sub MyDropDownList_DataBound(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyDropDownList.DataBound
    For x As Integer = MyDropDownList.Items.Count - 1 To 0 Step -1
        If RemoveToBeReviewed()
            If MyDropDownList.Items(x).Text = "To Be Reviewed" Then
                MyDropDownList.Items.RemoveAt(x)
            End If
        End If
    Next
End Sub

答案 2 :(得分:-1)

假设tstr是您的菜单项,您可以按如下方式显示该项目:

tstr.DropDownItems[i].Visible = false; 

其中i是您商品的索引。