C# 当某个值返回为null时,如何使用下拉列表中的选定值?
目标:让下拉列表根据数据表上的某些数据选择特定值 问题:数据表上的某些数据没有值,这会导致超出范围的异常。代码如下所示C# 当某个值返回为null时,如何使用下拉列表中的选定值?,c#,datatable,selectedvalue,C#,Datatable,Selectedvalue,目标:让下拉列表根据数据表上的某些数据选择特定值 问题:数据表上的某些数据没有值,这会导致超出范围的异常。代码如下所示 dtMyDataTable = objMyObject.MyStoredProcedure(); if(dtMyDataTable.Rows.Count > 0) { ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString(); } 提前感谢您的任何意见、建议或建议 ddlMyDro
dtMyDataTable = objMyObject.MyStoredProcedure();
if(dtMyDataTable.Rows.Count > 0)
{
ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString();
}
提前感谢您的任何意见、建议或建议 ddlMyDropDownList是下拉列表控件吗?如果是,则不能将字符串值分配给列表控件。所以这可能是个问题。请参阅以了解如何做到这一点
if(dtMyDataTable.Rows.Count > 0)
{
if(dtMyDataTable.Rows[0]["OptionalField"] != null)
ddlMyDropDownList = dtMyDataTable.Rows[0]["OptionalField"].ToString();
}
这个答案还应该告诉您如何防止空值。对于任何感兴趣的人,这就是我解决问题的方法:
if (dtMyTable.Rows[0]["OptionalField"] != null)
{
if (dtMyTable.Rows[0]["OptionalField"].ToString() == "")
{
ddlMyDropDownList .SelectedIndex = 0;
}
else
{
ddlMyDropDownList .SelectedValue = dtMyTable.Rows[0]["OptionalField"].ToString();
}
}
当我有一个非null的值时,这就起作用了,但是当我遇到null值时,我会得到一个异常,表明ddl选择的值超出范围。我尝试创建一个将ddl SelectedValue设置为“0”的else,但它似乎无法解决我的问题