2011-10-24 11 views
1

私は.NETプログラミングの全く新しい初心者です。コードビハインドの使用時にデータリスト名が宣言されていません。 aspx.vb

私はデータベースからデータを抽出し、それをデータリストに提示するいくつかのコードを実行しました。スクリプトは、ASPXファイル上にあるときには正常に動作しますが、私は後ろにコードにそれを転送するとき、私は

明らか

Compiler Error Message: BC30451: Name 'showIt' is not declared. 

(showItは、データリストのIDです)、次のエラー、データリストを取得しますマークアップは私のaspxページにあり、スクリプトは.vbファイルの後ろのコードにあります。

私が言うように、スクリプトはすべて1つの.aspxファイルにあるときにすべて動作します。

の背後にあるコード内のコードは次のとおりです。(私は簡潔なこのポストを維持するために、SQLおよび接続文字列をスキップしました)

Partial Public Class Data 
Inherits System.Web.UI.Page 

Sub Page_Load(sender As Object, e As EventArgs) 

    Dim objDataReader As OdbcDataReader 
    objDataReader = objCommand.ExecuteReader(CommandBehavior.CloseConnection) 

    showIt.DataSource = objDataReader 
    showIt.DataBind() 
    objDataReader.Close() 
end sub 
end class 

のaspxファイルには、次のようになります(再単純化し、基本的なHTMLマークアップなど削除)

<%@ Page Language="VB" AutoEventWireup="true" CodeFile="dataOut.aspx.vb" Inherits="_Default"%> 
<form id="form1" runat="server"> 

<asp:DataList ID="showIt" runat="server" RepeatLayout="Flow" RepeatDirection="Horizontal"> 
<ItemTemplate>  
<div style="width:300px; display:inline-block; height: 200px; overflow:hidden"> 
     <div style="width:100%; background:#880000; border-bottom: solid 1px black"><%# DataBinder.Eval(Container.DataItem, "item") %></div> 
     <br /> 
     <%# Data.stockDisplay(Eval("shopstock"))%> 
     <div style="clear: both"><%# Left(DataBinder.Eval(Container.DataItem, "description"),150) %></div> 
</div>   
</ItemTemplate> 

答えて

1

ヘクタールああ....私はそれを修正しました!それは公に利用可能になったので、関数の前にDataListコントロールを宣言するために必要な

...か、少なくとも私はそれが問題だったと思うが、それはとにかく、今

Protected WithEvents showIt As System.Web.UI.WebControls.DataList 

に動作します私は今、他の問題を持っている...そのしかし別の質問に行くことができます!

関連する問題