捕获错误的干净方法未设置对象引用

Clean way to catch error Object reference not set

当DeliveryMethodComboBox没有selectedItem时,

Object reference not set to an instance of an object.

出现错误。

解决这个问题的最佳方法是什么? 在这个例子中,我添加了一个 try and catch。

try
{
    DeliveryMethodLabel2.Text = DeliveryMethodComboBox.SelectedItem.ToString();
}
catch 
{
    DeliveryMethodLabel2.Text = "";
}

我假设你的意思是该值为 null

** 假设您的列表中没有空值,并且您只关心是否有选择。

if(DeliveryMethodComboBox.SelectedIndex != -1)
{
    DeliveryMethodLabel2.Text = DeliveryMethodComboBox.SelectedItem.ToString();
}
else
{
    DeliveryMethodLabel2.Text = "";
}

否则,如果 DeliverMethodComboBox 可以为 null,只需将 if 更改为

if(DeliveryMethodComboBox != null && DeliveryMethodComboBox.SelectedIndex != -1)