3

我在下拉列表中遇到问题,在 ASP.Net 4.0 中使用以下代码未引发错误

下拉列表为空开始。有问题的页面是一个简单的测试页面,除了 Page_Load 中的以下行之外不包含任何代码。

ddlTest.Items.Add(new ListItem("test","test"));
ddlTest.SelectedValue = "Fail";

当我加载页面时,DDL 将“test”显示为唯一的项目(如预期的那样)并且不会引发错误。我认为会引发错误,例如“项目'失败'不存在”

我已经在 if (!IsPostBack) 块内部和外部测试了代码。结果是一样的。

这有意义吗?我不明白为什么这不会引发错误。任何解释将不胜感激。

谢谢。

4

1 回答 1

0

如果 ddlTest 中没有项目,它只会抛出异常,否则它只是找不到值。

如果您试图找出该项目是否存在于列表中,您始终可以先执行此操作:

if (ddlTest.Items.FindByValue("Fail") != null)
  ddlTest.SelectedValue = "Fail";
else
  //item doesn't exist, do something meaningful here
于 2012-09-06T16:45:13.490 回答