Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations bkrike on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Error Message: 'DataItem' is not a member of 'System

Status
Not open for further replies.

humbleprogrammer

Programmer
Oct 30, 2002
315
US
Hello,

Can someone help me out with the following error? I am stumped. Thanks!

Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30456: 'DataItem' is not a member of 'System.Web.UI.Control'.

Source Error:



Line 104: <asp:TemplateColumn HeaderText=&quot;Item Name&quot; ItemStyle-Wrap=&quot;False&quot;>
Line 105: <ItemTemplate>
Line 106: <%# DataBinder.Eval(Container.DataItem, &quot;Status&quot;) %>
Line 107: </ItemTemplate>
Line 108: <EditItemTemplate>


Source File: C:\Inetpub\ Line: 106

Below is my code:

<%@ Import Namespace=&quot;System.Data.OleDb&quot; %>
<%@ Import Namespace=&quot;System.Data&quot; %>
<%@ Page Language=&quot;vb&quot; AutoEventWireup=&quot;false&quot; Codebehind=&quot;Items.aspx.vb&quot; Inherits=&quot;ProdItems.Items&quot;%>
<!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0 Transitional//EN&quot;>
<HTML>
<HEAD>
<title>Misty's Baby Shower - Registered Items</title>
<meta content=&quot;Microsoft Visual Studio.NET 7.0&quot; name=&quot;GENERATOR&quot;>
<meta content=&quot;Visual Basic 7.0&quot; name=&quot;CODE_LANGUAGE&quot;>
<meta content=&quot;vbscript&quot; name=&quot;vs_defaultClientScript&quot;>
<meta content=&quot; name=&quot;vs_targetSchema&quot;>
<script runat=&quot;server&quot; language=&quot;vb&quot;>
'Declare a connection object that is global
Dim objConnection As OleDbConnection

Sub Page_Load(Sender As Object, E As EventArgs)
objConnection = NEW OleDbConnection(&quot;Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Inetpub\
If Not (IsPostBack)
BindGrid()
End If
End Sub

Sub Page_Unload(Sender As Object, E As EventArgs)
objConnection = Nothing
End Sub

Sub BindGrid()
Dim objDataSet As DataSet
Dim objDataAdapter As OleDbDataAdapter
objDataAdapter = New OleDbDataAdapter( _
&quot;SELECT tblRegisteredItems.ID, tblRegisteredItems.ItemName, tblRegisteredItems.Description, tblRegisteredItems.SellingStores, tblRegisteredItems.Price, tblRegisteredItems.Status FROM tblRegisteredItems ORDER BY Status&quot;, objConnection)

objDataSet = New DataSet()
objDataAdapter.Fill(objDataSet, &quot;tblRegisteredItems&quot;)

grdItems.DataSource = objDataSet
grdItems.DataBind()

objDataAdapter = Nothing
objDataSet = Nothing
End Sub

Sub EditGridData(Sender As Object, E As DataGridCommandEventArgs)
grdItems.EditItemIndex = CInt(E.Item.ItemIndex)
BindGrid()
End Sub

Sub CancelGridData(Sender As Object, E As DataGridCommandEventArgs)
grdItems.EditItemIndex = -1
BindGrid()
End Sub

Sub UpdateGridData(Sender As Object, E As DataGridCommandEventArgs)
Dim objCommand As OleDbCommand
Dim objTextBox As TextBox

Dim strSQL As String = &quot;UPDATE tblRegisteredItems &quot; & _
&quot;SET Status = @Status WHERE ID = @ID&quot;

objCommand = New OleDbCommand(strSQL, objConnection)

objCommand.Parameters.Add(&quot;@ID&quot;, OleDbType.VarChar, 6)

objCommand.Parameters.Add(&quot;@Status&quot;, OleDbType.VarChar, 50)

objCommand.Parameters(&quot;@ID&quot;).Value = _
grdItems.DataKeys(CInt(E.Item.ItemIndex))
objTextBox = E.Item.FindControl(&quot;Status&quot;)

objCommand.Parameters(&quot;@Status&quot;).Value = objTextBox.Text

objCommand.Connection.Open()
objCommand.ExecuteNonQuery()
grdItems.EditItemIndex = -1
objCommand.Connection.Close()

BindGrid()

objCommand = Nothing
objTextBox = Nothing

End Sub
</script>
</HEAD>
<body MS_POSITIONING=&quot;GridLayout&quot;>
<form id=&quot;Form1&quot; method=&quot;post&quot; runat=&quot;server&quot;>
<asp:DataGrid
id=&quot;grdItems&quot;
style=&quot;Z-INDEX: 106; LEFT: 24px; POSITION: absolute; TOP: 59px&quot;
runat=&quot;server&quot;
AllowSorting=&quot;True&quot;
ShowFooter=&quot;True&quot;
EditItemStyle-BackColor=&quot;LightGray&quot;
AlternatingItemStyle-BackColor=&quot;WhiteSmoke&quot;
HeaderStyle-BackColor=&quot;RoyalBlue&quot;
FooterStyle-BackColor=&quot;RoyalBlue&quot;
DataKeyField=&quot;ID&quot;
BackColor=&quot;White&quot;
BorderColor=&quot;#E7E7FF&quot;
BorderStyle=&quot;None&quot;
BorderWidth=&quot;1px&quot;
CellPadding=&quot;3&quot;
GridLines=&quot;Horizontal&quot;
AutoGenerateColumns=&quot;False&quot;
AllowPaging=&quot;True&quot;
OnEditCommand=&quot;EditGridData&quot;
OnCancelCommand=&quot;CancelGridData&quot;
OnUpdateCommand=&quot;UpdateGridData&quot; >
<SelectedItemStyle Font-Bold=&quot;True&quot; ForeColor=&quot;#F7F7F7&quot; BackColor=&quot;#738A9C&quot;></SelectedItemStyle>
<EditItemStyle BackColor=&quot;LightGray&quot;></EditItemStyle>
<AlternatingItemStyle BackColor=&quot;#F7F7F7&quot;></AlternatingItemStyle>
<ItemStyle ForeColor=&quot;#4A3C8C&quot; BackColor=&quot;#E7E7FF&quot;></ItemStyle>
<HeaderStyle Font-Bold=&quot;True&quot; ForeColor=&quot;#F7F7F7&quot; BackColor=&quot;#4A3C8C&quot;></HeaderStyle>
<FooterStyle ForeColor=&quot;#4A3C8C&quot; BackColor=&quot;#B5C7DE&quot;></FooterStyle>
<PagerStyle HorizontalAlign=&quot;Right&quot; ForeColor=&quot;#4A3C8C&quot; BackColor=&quot;#E7E7FF&quot; Mode=&quot;NumericPages&quot;></PagerStyle>
</asp:DataGrid>
<Columns>
<asp:EditCommandColumn EditText=&quot;Mark as Purchased&quot; CancelText=&quot;Cancel Edit&quot; UpdateText=&quot;Update&quot; ItemStyle-Wrap=&quot;False&quot; />
<asp:BoundColumn DataField=&quot;ID&quot; Visible=&quot;False&quot; />
<asp:BoundColumn DataField=&quot;ItemName&quot; HeaderText=&quot;Item Name&quot; ReadOnly=&quot;True&quot; ItemStyle-Wrap=&quot;False&quot; />
<asp:BoundColumn DataField=&quot;Description&quot; HeaderText=&quot;Description&quot; ReadOnly=&quot;True&quot; ItemStyle-Wrap=&quot;True&quot; />
<asp:BoundColumn DataField=&quot;SellingStores&quot; HeaderText=&quot;Stores&quot; ReadOnly=&quot;True&quot; ItemStyle-Wrap=&quot;True&quot; />
<asp:BoundColumn DataField=&quot;Price&quot; HeaderText=&quot;Price&quot; ReadOnly=&quot;True&quot; ItemStyle-Wrap=&quot;False&quot; />
<asp:TemplateColumn HeaderText=&quot;Item Name&quot; ItemStyle-Wrap=&quot;False&quot;>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, &quot;Status&quot;) %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat=&quot;server&quot;
ID=&quot;ItemName&quot;
Text='<%# DataBinder.Eval (Container.DataItem, &quot;Status&quot;) %>'/>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</form>
</body>
</HTML>
 
I've always seen it as

Container.DataItem(&quot;name&quot;)

not

Container.DataItem, (&quot;name&quot;)

Actually, I'm not sure if I used DataItem either...I can check that tommorrow, but I'm sure about the bracket placement.

D'Arcy
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top