ASP 对象引用未设置为对象的例子
发布时间:2023-02-25 10:49:26 所属栏目:Asp教程 来源:
导读:如何解决ASP:对象引用未设置为对象的实例?
| 我正在尝试将值从数据源传递给标签,但它一直在给我这个错误。 form1.aspx:
<asp:FormView ID=\"ProductsView\" DataSourceID=\"ProductDataSource\" DataKeyNames
| 我正在尝试将值从数据源传递给标签,但它一直在给我这个错误。 form1.aspx:
<asp:FormView ID=\"ProductsView\" DataSourceID=\"ProductDataSource\" DataKeyNames
如何解决ASP:对象引用未设置为对象的实例? | 我正在尝试将值从数据源传递给标签,但它一直在给我这个错误。 form1.aspx: <asp:FormView ID=\"ProductsView\" DataSourceID=\"ProductDataSource\" DataKeyNames=\"Parking_ID\" runat=\"server\" > <ItemTemplate> <div style=\"width: 200px; height: 200px; border: solid 10px white; background-position: center; background-repeat: no-repeat; background-image: url(\'<%# Eval(\"Parking_ID\",\"images/{0}.bmp\") %>\');\"> </div> <asp:HiddenField Value=\'<%# Eval(\"Parking_Cost\") %>\' ID=\"hiddenPrice\" runat=\"server\" /> <asp:HiddenField Value=\'<%# Eval(\"Parking_Name\") %>\' ID=\"hiddenName\" runat=\"server\" /> <asp:HiddenField Value=\'<%# Eval(\"Parking_ID\") %>\' ID=\"HiddenField1\" runat=\"server\" /> </ItemTemplate> </asp:FormView> <asp:Label ID=\"lblName\" runat=\"server\" Text=\"TEST\" CssClass=\"title\" Style=\"font-size: 17px; display: block;\"></asp:Label> <asp:Label ID=\"lblPrice\" runat=\"server\" Text=\"TEST\" CssClass=\"title\" Style=\"color: Red; font-size: 12px;\"></asp:Label> <asp:Label ID=\"lbl_ID\" runat=\"server\" Text=\"\" CssClass=\"title\" Style=\"color: Red; font-size: 12px;\"></asp:Label> <asp:sqlDataSource ID=\"ProductDataSource\" runat=\"server\" ConnectionString=\"<%$ ConnectionStrings:mydatabaseConnectionString2 %>\" ProviderName=\"System.Data.sqlClient\" SelectCommand=\"SELECT * FROM [Parking] WHERE ([Parking_ID] = @Parking_ID)\"> <SelectParameters> <asp:Parameter Name=\"Parking_ID\" Type=\"Int32\" /> </SelectParameters> </asp:sqlDataSource> form1.aspx.vb: lblName.Text = DirectCast(Me.ProductsView.FindControl(\"hiddenName\"),HiddenField).Value 我正在使用vb.net脚本 有任何想法吗 ? 问候。 解决方法 控件通常位于FormView的数据行中。 尝试 lblName.Text = DirectCast(Me.ProductsView.Row.FindControl(\"hiddenName\"),HiddenField).Value 但是一般来说,当您使用 Control.FindControl() 时,如果找不到find3ѭ,有机会返回 Nothing 。所以最好的办法是做一个ѭ5而不是 DirectCast ,并检查它是否是 Nothing 。 ,我猜错误源是以下语句: Me.ProductsView.FindControl(\"hiddenName\") 原因是您在 ProductsView 控件中没有 Control ,而ѭ11的 ID 。 您可能需要使用递归函数来获取控件。 ,此代码是否在bind事件中? lblName.Text = DirectCast(Me.ProductsView.FindControl(\"hiddenName\"),HiddenField).Value 如果是这样,可能是您必须检查它正在运行哪个模板: if (e.Item.ItemType == ItemType || e.Item.ItemType == AlternateItemType) (我不确定 FormView 的类型,但在 GridView 中会是这样。 控件.17ѭ在其他模板上不存在。 另外,您还必须从 e.Item (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |