在dropdownlist1 . selecteitem . value上抛出Nullpointexception

本文关键字:Nullpointexception value dropdownlist1 selecteitem | 更新日期: 2023-09-27 17:54:20

当页面加载时,我得到一个Nullpoint异常。我怎样才能预防呢?

protected override void InitializeCulture() 
{ 
    base.InitializeCulture();
    if (DropDownList1.SelectedItem.Value != null) // NULL POINT EXCEPTION THROWN HERE
    {
       //
    }
} 

在dropdownlist1 . selecteitem . value上抛出Nullpointexception

您可以通过确保DropDownList1和SelectedItem都不为空来防止NullReferenceException,或者将代码移动到它们不为空的地方,或者更改if语句以检查DropDownList1或SelectItem是否为空,然后检查DropDownList1. selecteitemvalue .

InitializeCulture通常在页面生命周期的早期被调用(在viewstate等加载之前,因此引用控件可能会有问题)。我假设可能想要使用下拉列表中选择的值设置当前区域性。为此,您应该嗅探Request.Form,而不是使用控制参考。例如,

protected override void InitializeCulture() 
{ 
    base.InitializeCulture();
    var selectedCulture = Request.Form["DowndownListName"];
    if (!string.IsNullOrEmpty(selectedCulture))
    {
       ...
    }
}

DowndownListName应该是服务器端控件的UniqueID(和渲染html源中渲染select元素的name属性)。我建议使用html控件(而不是服务器控件)来拥有一个可以在源代码中硬编码的静态名称。

相关文章:
  • 没有找到相关文章