2012-07-25 47 views
1

这里的GridView控件的图片我的工作:http://i.imgur.com/kFUTQ.pngC#的GridView细胞返回空字符串

这里是我的问题: 我有一个DropDownList(图中未画出)具有相同数量的项目作为分数DropDownList(如图所示)。每个索引都相互匹配(例如:其他字段的索引4与Fraction DropDownList的索引4相同),因此提交表单时必须正确匹配这两个索引。

我想要做的是检查并确定它们是否确实匹配。我已经试过:

this.gvRecords.Rows[0].Cells[2].Text 

&

(((DropDownList)this.gvReserveRecords.Controls[0].Controls[0] 
.FindControl("gvcbnFraction")).SelectedIndex 

无论工作过。他们只是返回一个空字符串。

这里的一些信息,可以帮助:

  • 我使用ASP.NET Web窗体

  • GridView控件最初是空的,但一旦信息填写,“插入”的LinkBut​​ton被点击并且数据被添加到数据库中,然后GridView调用DataBind()。

  • 我想分数的值进行比较的一个字段在GridView外,如果该事项在所有。

让我知道你是否需要任何其他信息!

+1

为什么你想通过GridMenu找到下拉菜单?它有一个ID,对吧? go:gvcbnFraction.SelectedIndex()或gvcbnFraction.SelectedValue() – Egor 2012-07-25 21:21:29

+0

FLOAT < ASP:一个ListItem> 1/8 ...' 这就是它看起来ASCX页面上,但是,我不能在我的代码隐藏文件中使用它因为某些原因。它告诉我,它在当前的情况下不可用。 – 2012-07-25 21:29:11

+0

我怀疑下拉菜单在设计器文件中没有正确注册,或者在.aspx和.cs文件之间缺少一些引用。尝试从工具箱拖动一个DropDownList控件到你的aspx页面,然后看看你是否可以通过默认ID在代码隐藏中引用它 - DropDownList1 编辑:对不起,当我说工具箱我假设你使用的是Visual Studio – Egor 2012-07-25 21:49:05

回答

1

你应该能够通过它的ID简单地引用您的下拉控件,在这种情况下 - gvcbnFraction。所以,gvcbnFraction.SelectedIndex应该给出整数索引,gvcbnFraction.SelectedValue应该给出字符串值。 如果您无法在您的代码中引用下拉控件,那么您错过了应该在那里的东西。这些可能的一个:

  1. 你designer.cs文件不包括protected global::System.Web.UI.WebControls.DropDownList gvcbnFraction;
  2. 你的.aspx文件中不包括CodeBehind="MySuperAwesomePage.aspx.cs" Inherits="MyWebApp._Default"或类似
  3. 别的东西,我只是不知道的东西

如果您使用的是Visual Studio,则可以尝试从工具箱中拖动控件并查看是否可以引用它。这样做会自动更新您的designer.cs文件,消除#1

+0

1.它不在设计器文件中,但是在那里是在cs文件中的其他下拉列表,这些文件不在设计器文件中工作正常。 2.我的.ascx文件正确包含代码隐藏文件。 3.我希望不是。 :( – 2012-07-25 22:12:45