humbleprogrammer
Programmer
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="Item Name" ItemStyle-Wrap="False">
Line 105: <ItemTemplate>
Line 106: <%# DataBinder.Eval(Container.DataItem, "Status"
%>
Line 107: </ItemTemplate>
Line 108: <EditItemTemplate>
Source File: C:\Inetpub\ Line: 106
Below is my code:
<%@ Import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.Data" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="Items.aspx.vb" Inherits="ProdItems.Items"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>Misty's Baby Shower - Registered Items</title>
<meta content="Microsoft Visual Studio.NET 7.0" name="GENERATOR">
<meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
<meta content="vbscript" name="vs_defaultClientScript">
<meta content=" name="vs_targetSchema">
<script runat="server" language="vb">
'Declare a connection object that is global
Dim objConnection As OleDbConnection
Sub Page_Load(Sender As Object, E As EventArgs)
objConnection = NEW OleDbConnection("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( _
"SELECT tblRegisteredItems.ID, tblRegisteredItems.ItemName, tblRegisteredItems.Description, tblRegisteredItems.SellingStores, tblRegisteredItems.Price, tblRegisteredItems.Status FROM tblRegisteredItems ORDER BY Status", objConnection)
objDataSet = New DataSet()
objDataAdapter.Fill(objDataSet, "tblRegisteredItems"
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 = "UPDATE tblRegisteredItems " & _
"SET Status = @Status WHERE ID = @ID"
objCommand = New OleDbCommand(strSQL, objConnection)
objCommand.Parameters.Add("@ID", OleDbType.VarChar, 6)
objCommand.Parameters.Add("@Status", OleDbType.VarChar, 50)
objCommand.Parameters("@ID"
.Value = _
grdItems.DataKeys(CInt(E.Item.ItemIndex))
objTextBox = E.Item.FindControl("Status"
objCommand.Parameters("@Status"
.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="GridLayout">
<form id="Form1" method="post" runat="server">
<asp
ataGrid
id="grdItems"
style="Z-INDEX: 106; LEFT: 24px; POSITION: absolute; TOP: 59px"
runat="server"
AllowSorting="True"
ShowFooter="True"
EditItemStyle-BackColor="LightGray"
AlternatingItemStyle-BackColor="WhiteSmoke"
HeaderStyle-BackColor="RoyalBlue"
FooterStyle-BackColor="RoyalBlue"
DataKeyField="ID"
BackColor="White"
BorderColor="#E7E7FF"
BorderStyle="None"
BorderWidth="1px"
CellPadding="3"
GridLines="Horizontal"
AutoGenerateColumns="False"
AllowPaging="True"
OnEditCommand="EditGridData"
OnCancelCommand="CancelGridData"
OnUpdateCommand="UpdateGridData" >
<SelectedItemStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#738A9C"></SelectedItemStyle>
<EditItemStyle BackColor="LightGray"></EditItemStyle>
<AlternatingItemStyle BackColor="#F7F7F7"></AlternatingItemStyle>
<ItemStyle ForeColor="#4A3C8C" BackColor="#E7E7FF"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#4A3C8C"></HeaderStyle>
<FooterStyle ForeColor="#4A3C8C" BackColor="#B5C7DE"></FooterStyle>
<PagerStyle HorizontalAlign="Right" ForeColor="#4A3C8C" BackColor="#E7E7FF" Mode="NumericPages"></PagerStyle>
</asp
ataGrid>
<Columns>
<asp:EditCommandColumn EditText="Mark as Purchased" CancelText="Cancel Edit" UpdateText="Update" ItemStyle-Wrap="False" />
<asp:BoundColumn DataField="ID" Visible="False" />
<asp:BoundColumn DataField="ItemName" HeaderText="Item Name" ReadOnly="True" ItemStyle-Wrap="False" />
<asp:BoundColumn DataField="Description" HeaderText="Description" ReadOnly="True" ItemStyle-Wrap="True" />
<asp:BoundColumn DataField="SellingStores" HeaderText="Stores" ReadOnly="True" ItemStyle-Wrap="True" />
<asp:BoundColumn DataField="Price" HeaderText="Price" ReadOnly="True" ItemStyle-Wrap="False" />
<asp:TemplateColumn HeaderText="Item Name" ItemStyle-Wrap="False">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Status"
%>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat="server"
ID="ItemName"
Text='<%# DataBinder.Eval (Container.DataItem, "Status"
%>'/>
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</form>
</body>
</HTML>
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="Item Name" ItemStyle-Wrap="False">
Line 105: <ItemTemplate>
Line 106: <%# DataBinder.Eval(Container.DataItem, "Status"
Line 107: </ItemTemplate>
Line 108: <EditItemTemplate>
Source File: C:\Inetpub\ Line: 106
Below is my code:
<%@ Import Namespace="System.Data.OleDb" %>
<%@ Import Namespace="System.Data" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="Items.aspx.vb" Inherits="ProdItems.Items"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<title>Misty's Baby Shower - Registered Items</title>
<meta content="Microsoft Visual Studio.NET 7.0" name="GENERATOR">
<meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
<meta content="vbscript" name="vs_defaultClientScript">
<meta content=" name="vs_targetSchema">
<script runat="server" language="vb">
'Declare a connection object that is global
Dim objConnection As OleDbConnection
Sub Page_Load(Sender As Object, E As EventArgs)
objConnection = NEW OleDbConnection("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( _
"SELECT tblRegisteredItems.ID, tblRegisteredItems.ItemName, tblRegisteredItems.Description, tblRegisteredItems.SellingStores, tblRegisteredItems.Price, tblRegisteredItems.Status FROM tblRegisteredItems ORDER BY Status", objConnection)
objDataSet = New DataSet()
objDataAdapter.Fill(objDataSet, "tblRegisteredItems"
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 = "UPDATE tblRegisteredItems " & _
"SET Status = @Status WHERE ID = @ID"
objCommand = New OleDbCommand(strSQL, objConnection)
objCommand.Parameters.Add("@ID", OleDbType.VarChar, 6)
objCommand.Parameters.Add("@Status", OleDbType.VarChar, 50)
objCommand.Parameters("@ID"
grdItems.DataKeys(CInt(E.Item.ItemIndex))
objTextBox = E.Item.FindControl("Status"
objCommand.Parameters("@Status"
objCommand.Connection.Open()
objCommand.ExecuteNonQuery()
grdItems.EditItemIndex = -1
objCommand.Connection.Close()
BindGrid()
objCommand = Nothing
objTextBox = Nothing
End Sub
</script>
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp
id="grdItems"
style="Z-INDEX: 106; LEFT: 24px; POSITION: absolute; TOP: 59px"
runat="server"
AllowSorting="True"
ShowFooter="True"
EditItemStyle-BackColor="LightGray"
AlternatingItemStyle-BackColor="WhiteSmoke"
HeaderStyle-BackColor="RoyalBlue"
FooterStyle-BackColor="RoyalBlue"
DataKeyField="ID"
BackColor="White"
BorderColor="#E7E7FF"
BorderStyle="None"
BorderWidth="1px"
CellPadding="3"
GridLines="Horizontal"
AutoGenerateColumns="False"
AllowPaging="True"
OnEditCommand="EditGridData"
OnCancelCommand="CancelGridData"
OnUpdateCommand="UpdateGridData" >
<SelectedItemStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#738A9C"></SelectedItemStyle>
<EditItemStyle BackColor="LightGray"></EditItemStyle>
<AlternatingItemStyle BackColor="#F7F7F7"></AlternatingItemStyle>
<ItemStyle ForeColor="#4A3C8C" BackColor="#E7E7FF"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="#F7F7F7" BackColor="#4A3C8C"></HeaderStyle>
<FooterStyle ForeColor="#4A3C8C" BackColor="#B5C7DE"></FooterStyle>
<PagerStyle HorizontalAlign="Right" ForeColor="#4A3C8C" BackColor="#E7E7FF" Mode="NumericPages"></PagerStyle>
</asp
<Columns>
<asp:EditCommandColumn EditText="Mark as Purchased" CancelText="Cancel Edit" UpdateText="Update" ItemStyle-Wrap="False" />
<asp:BoundColumn DataField="ID" Visible="False" />
<asp:BoundColumn DataField="ItemName" HeaderText="Item Name" ReadOnly="True" ItemStyle-Wrap="False" />
<asp:BoundColumn DataField="Description" HeaderText="Description" ReadOnly="True" ItemStyle-Wrap="True" />
<asp:BoundColumn DataField="SellingStores" HeaderText="Stores" ReadOnly="True" ItemStyle-Wrap="True" />
<asp:BoundColumn DataField="Price" HeaderText="Price" ReadOnly="True" ItemStyle-Wrap="False" />
<asp:TemplateColumn HeaderText="Item Name" ItemStyle-Wrap="False">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "Status"
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox Runat="server"
ID="ItemName"
Text='<%# DataBinder.Eval (Container.DataItem, "Status"
</EditItemTemplate>
</asp:TemplateColumn>
</Columns>
</form>
</body>
</HTML>