8

我在 asp.net 环境中有 3 个下拉框(组合框)。它们都是可选的,所以如果用户选择了任何东西,我正在更新数据库,如果根本没有选择任何东西,我仍然使用空值更新数据库。

我试图这样做:

 int? CountryId = Convert.ToInt32(ddCountries.SelectedItem.Value);

我希望如果未选择任何内容,则将在 CountryId 中插入 null,但是,它会引发异常。

我试图搜索 ddCountries.isSelected (或类似的东西),但它显然不存在..

那么如何确定是否在下拉框中进行了选择?- 通过 c# 代码。

非常感谢

ps:我有一个想法 - 我将每个下拉框放在一个 try...catch 块中,如果出现异常,请手动将变量设置为 null ..但我不确定这是最好的方法!

4

2 回答 2

16

您正在寻找

if(ddCountries.SelectedIndex > -1)

您永远不应该使用异常来控制程序流。

于 2010-08-16T10:35:08.623 回答
-1

你可以使用这个:

If ComboBoxChannel.SelectedValue.ToString.ToLower = "system.data.datarowview"
Then Exit Sub

请注意,它在 VB.Net 中

于 2017-08-20T06:56:47.503 回答