繁体   English   中英

你调用的对象是空的。 得到这个错误

[英]Object reference not set to an instance of an object. getting this error

我正在研究ASP .Net C#项目,并且是Web编程的初学者。 我在运行时收到以下错误:

你调用的对象是空的。

下面是我的代码:

protected void Page_Load(object sender, EventArgs e)
{
    txtUsername.Focus();
    if (cmbThemes.SelectedItem.Text=="Red")
    {
        pnlSignin.Border.BorderColor = Color.Orange;
    }
}

cmbThemes是一个ComboBox

提前致谢。

更改

if (cmbThemes.SelectedItem.Text=="Red")

if (cmbThemes.SelectedItem !=null &&cmbThemes.SelectedItem.Text=="Red")
{}

检查变量的值, variable txtUsernamecmbThemesNULL

可以将组合框的默认selectedindex设置为-1以外的值,或者在检查文本之前始终选中它SelectedItem == null。

您的组合框有任何物品吗? 在尝试设置或获取其任何属性之前,请确保它至少包含一项。

在检查条件之前,您必须首先检查您的组合框一定不能为空。 您可以执行以下任一操作:

protected void Page_Load(object sender, EventArgs e)
{
    txtUsername.Focus();
    if (cmbThemes.SelectedItem!=null)
    {
       if (cmbThemes.SelectedItem.Text=="Red")
       {
         //OtherOperations
       }
    }
 }

要么

protected void Page_Load(object sender, EventArgs e)
{
   txtUsername.Focus();
   if (cmbThemes.SelectedIndex > -1)
   {
      if (cmbThemes.SelectedItem.Text=="Red")
      {
         //OtherOperations
      }
   }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM