【问题标题】:Unable to bind datatable data to the gridview无法将数据表数据绑定到 gridview
【发布时间】:2012-01-02 15:17:26
【问题描述】:

ASP.NET 使用 C#.NET; 3.5f/w

嗨, 我有一个数据表如下:

Location   Dotnet  Java  Others  Total
Hyd          20     25   10       55
Blore        40     30   10       80
Hyd          65     15   05       85
Hyd          20     20   10       55

我想将列标题 Location、Dotnet、java、others、Total 如上表设置为 gridview 列标题。

在上表中,我在网格中有文本框来代替数字值。

我想将我的数据表数据绑定到gridview。

我的问题是无法将数据绑定到网格视图,因为即使我的数据表已准备好。

获取异常:

System.Web.HttpException 未被用户代码处理 Message="DataBinding: 'System.Data.DataRowView' 不包含名为 'Skill1_value' 的属性。" 来源="系统.Web" 错误代码=-2147467259 堆栈跟踪: 在 System.Web.UI.DataBinder.GetPropertyValue(对象容器,字符串 propName) 在 System.Web.UI.DataBinder.Eval(对象容器,字符串 [] 表达式部分) 在 System.Web.UI.DataBinder.Eval(对象容器,字符串表达式) 在 System.Web.UI.TemplateControl.Eval(字符串表达式) 在 d:\ABC\Location.aspx:line 250 中的 ASP.location_aspx._DataBinding_control53(Object sender, EventArgs e) 在 System.Web.UI.Control.OnDataBinding(EventArgs e) 在 System.Web.UI.Control.DataBind(布尔 raiseOnDataBinding) 在 System.Web.UI.Control.DataBind() 在 System.Web.UI.Control.DataBindChildren() 内部异常:

请帮助他。

请帮助如何将数据表数据绑定到gridview。

源视图中的 HTML 内容:

                       <ItemTemplate>
                            <table cellpadding="0" cellspacing="0" style="width: 100%">
                                <tr style="width: 100%">
                                    <td style="width: 25%">
                                    <asp:TextBox  ID="txt_Skill1" runat="server" Text='<%# Eval("Skill1_value") %>'
                                            CssClass="tms-secondaryRowTextBoxNew" Width="35%" />                                           
                                    </td>
                                  </tr>
                            </table>
                        </ItemTemplate>

这里我不知道如何在'&lt;%# Eval("Skill1_value") %&gt;' 中使用 Skill_Value,也不知道如何从代码隐藏中为该文本框控件设置值。

我的问题是如何将数据表数据绑定到 gridview。

【问题讨论】:

  • 能否告诉我们发生错误的类/位置?
  • 在您的 aspx 标记中您似乎提到了一些“技能”列...如果您发布您的 aspx 标记会有所帮助

标签: c# asp.net .net-3.5


【解决方案1】:

在错误代码中显示

'System.Data.DataRowView' does not contain a property with the name 'Skill1_value'

尝试检查 Skill1_value 列是否存在。

如果列名正确,则使用 Bind 而不是 eval。

您可以在下面给出的链接中检查 bind 和 eval 的使用

http://alexandershapovalov.com/eval-vs-bind-for-aspnet-46/

如有任何疑问,请联系。

【讨论】:

  • 不在我后面的代码中询问您作为数据源分配给网格的表。在那里你可以找到专栏。
猜你喜欢
  • 2017-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-12
  • 1970-01-01
  • 2020-06-20
  • 2011-09-26
  • 1970-01-01
相关资源
最近更新 更多