检查是否已从 C# 的下拉列表中选择了值

发布于 2024-09-14 16:13:19 字数 447 浏览 11 评论 0原文

我在 asp.net 环境中有 3 个下拉框(组合框)。 它们都是可选的,因此如果用户选择了任何内容,我将更新数据库,如果根本没有选择任何内容,我仍在用空值更新数据库。

我尝试这样做:

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

我希望如果没有选择任何内容,将在 CountryId 中插入 null,但是,它会抛出异常。

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

那么我如何查明是否已在下拉框中进行选择? - 通过 C# 代码。

非常感谢

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

I have 3 dropdown boxes (combo box) in asp.net environment.
They are all optional, so if a user has selected anything, i am updating database, if nothing has been selected at all, i am still updating database with null values.

I tried to do this:

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

I was hoping that if nothing is selected null will be inserted in CountryId, but, instead its throwing an exception.

I tried to search for ddCountries.isSelected (or something like that) but it obviously doesnt exist..

so how do I find out if a selection has been made on a dropdown box? - through c# code.

Many Thanks

ps: I have a thought - i put each dropdown box in a try... catch block and if exception arises, set variables to null manually.. but I am not sure thats the best way to do it!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

等待圉鍢 2024-09-21 16:13:19

您正在寻找

if(ddCountries.SelectedIndex > -1)

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

You're looking for

if(ddCountries.SelectedIndex > -1)

You should never be using exceptions to control program flow.

惟欲睡 2024-09-21 16:13:19
ddCountries.SelectedIndex > 0;

这对我有用,假设您在 index 0 上有一个已插入的空项目。

ddCountries.Items.Insert(0, new ListItem(string.Empty, string.Empty));

ddCountries.SelectedIndex = 0;
ddCountries.SelectedIndex > 0;

This worked for me, assuming that you have an empty item on index 0 that you have inserted.

ddCountries.Items.Insert(0, new ListItem(string.Empty, string.Empty));

ddCountries.SelectedIndex = 0;
染年凉城似染瑾 2024-09-21 16:13:19

您可以使用这个:

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

请注意,它是在 VB.Net 中

You can use this:

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

Please note that it is in VB.Net

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文