加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

ASP 对象引用未设置为对象的例子

发布时间:2023-02-25 10:49:26 所属栏目:Asp教程 来源:
导读:如何解决ASP:对象引用未设置为对象的实例?
| 我正在尝试将值从数据源传递给标签,但它一直在给我这个错误。 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

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章