加入收藏 | 设为首页 | 会员中心 | 我要投稿 甘南站长网 (https://www.0941zz.com/)- 科技、行业物联网、开发、云计算、云管理!
当前位置: 首页 > 编程开发 > Asp > 正文

ASP:对象引用未设置为对象的实例

发布时间:2023-02-18 08:39:21 所属栏目:Asp 来源:互联网
导读:如何解决ASP:对象引用未设置为对象的实例? | 我正在尝试将值从数据源传递给标签,但它一直在给我这个错误。 form1.aspx: asp:FormView ID=ProductsView DataSourceID=ProductDataSource DataKeyNames=Parking_ID runat=server ItemTemplate div s
  
       如何解决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
  中找到当前模板的控件。     

(编辑:甘南站长网)

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

    推荐文章
      热点阅读