在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和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控件(而不是服务器控件)来拥有一个可以在源代码中硬编码的静态名称。