EditItemTemplate is ignored on edit

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • dch
    New Member
    • Feb 2008
    • 1

    EditItemTemplate is ignored on edit

    I have a GridView, and when I click Edit, it is firing the OnRowEditing event ,and I am setting the edititem index, but it keeps displaying the ItemTemplate fields instead of the EditItemTemplat e. I have done this before, but I can't figure out why it is ignoring the EditItem Template. I have my code below. Basically, I am storing a "work" table in a session variable, adn I bind that table to the grid, so I don't want to use a datasource.

    <%@ Page Language="VB" AutoEventWireup ="false" CodeFile="test. aspx.vb" Inherits="test" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt d">

    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
    <title>Untitl ed Page</title>
    </head>
    <body>
    <form id="form1" runat="server">
    <asp:GridView ID="gvSOLines" runat="server" AutoGenerateCol umns="false" DataKeyNames="P OLineNo"
    OnRowEditing="g vSOLines_RowEdi ting"
    OnRowUpdating=" gvSOLines_RowUp dating" OnRowCancelingE dit="gvSOLines_ RowCancelingEdi t"
    >
    <Columns>
    <asp:CommandFie ld ButtonType="Lin k" ShowEditButton= "true" ShowCancelButto n="true" ShowDeleteButto n="true" SelectText="Att ributes" />
    <asp:TemplateFi eld HeaderText="Lin e">
    <ItemTemplate >
    <asp:Label id="lblPOLineNo " Runat="Server" Text='<%# Eval("POLineNo" ) %>'/>
    </ItemTemplate>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="Cus tomer Item">
    <ItemTemplate >
    <asp:Label id="lblCustItem " Runat="Server" Text='<%# Eval("CustItem" ) %>'/>
    </ItemTemplate>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="Qua ntity">
    <EditItemTempla te>
    <asp:TextBox ID="txtQuantity " runat="server" Text='<%# Bind("Quantity" ) %>' />
    </EditItemTemplat e>
    <ItemTemplate >
    <asp:Label ID="lblQuantity " runat="server" Text='<%# Bind("Quantity" ) %>' />
    </ItemTemplate>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="U/M">
    <ItemTemplate >
    <asp:Label ID="lblUnitMeas ID" runat="server" Text='<%#Bind(" UnitMeasID") %>' />
    <asp:Label ID="lblUOM" runat="server" Text='<%#Bind(" UMKey") %>' visible="false"/>
    <asp:Label ID="lblItemID" runat="server" Text='<%#Bind(" ItemID") %>' visible="false"/>
    </ItemTemplate>
    <EditItemTempla te>
    <asp:DropDownLi st ID="ddlUOM" DataTextField=" UnitMeasID" DataValueField= "UnitMeasKe y" runat="server" />
    <asp:Label ID="lblUOM" runat="server" Text='<%#Bind(" UMKey") %>' visible="false"/>
    <asp:Label ID="lblItemID" runat="server" Text='<%#Bind(" ItemID") %>' visible="false"/>
    </EditItemTemplat e>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="Uni t Price">
    <ItemTemplate >
    <asp:Label id="lblPrice" Runat="Server" Text='<%# Eval("Price") %>'/>
    </ItemTemplate>
    <EditItemTempla te>
    <asp:Label id="lblPrice" Runat="Server" Text='<%# Eval("Price") %>'/>
    </EditItemTemplat e>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="Ext d Amt">
    <ItemTemplate >
    <asp:Label id="lblExtdAmt " Runat="Server" Text='<%# Eval("ExtdAmt") %>'/>
    </ItemTemplate>
    <EditItemTempla te>
    <asp:Label id="lblExtdAmt " Runat="Server" Text='<%# Eval("ExtdAmt") %>'/>
    </EditItemTemplat e>
    </asp:TemplateFie ld>
    <asp:TemplateFi eld HeaderText="Req Date">
    <ItemTemplate >
    <asp:Label id="lblRequestD ate" Runat="Server" Text='<%# Eval("RequestDa te") %>'/>
    </ItemTemplate>
    <EditItemTempla te>
    <asp:TextBox id="txtRequestD ate" Runat="Server" Text='<%# Eval("RequestDa te") %>' Width="50px"/>
    </EditItemTemplat e>
    </asp:TemplateFie ld>
    </Columns>
    </asp:GridView>
    </form>
    </body>
    </html>





    Imports System.Data

    Partial Class test
    Inherits System.Web.UI.P age


    Sub gvSOLines_RowCa ncelingEdit(ByV al sender As Object, ByVal e As GridViewCancelE ditEventArgs)
    gvSOLines.EditI ndex = -1
    Call BindLines()
    End Sub

    Sub gvSOLines_RowEd iting(ByVal sender As Object, ByVal e As GridViewEditEve ntArgs)
    gvSOLines.Selec tedIndex = e.NewEditIndex
    Call BindLines()
    End Sub

    Sub gvSOLines_RowUp dating(ByVal sender As Object, ByVal e As GridViewUpdateE ventArgs)
    'Dim row As GridViewRow = gvSOLines.Rows( e.RowIndex)
    Dim rowIndex As Integer = e.RowIndex
    End Sub

    Sub BindLines()

    'Bind order lines to gridview
    Try
    Dim dtSOLines As DataTable = Session("SOLine s")
    gvSOLines.DataS ource = dtSOLines
    gvSOLines.DataB ind()
    Catch ex As Exception
    End Try

    End Sub

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArg s) Handles Me.Load

    If Not Page.IsPostBack Then
    Dim dtSOLines As DataTable = New DataTable("Item ")

    dtSOLines.Colum ns.Add("ItemID" , GetType(String) )
    dtSOLines.Colum ns.Add("Price", GetType(Decimal ))
    dtSOLines.Colum ns.Add("Quantit y", GetType(Decimal ))
    dtSOLines.Colum ns.Add("Descrip tion", GetType(String) )
    dtSOLines.Colum ns.Add("POLineN o", GetType(Integer ))
    dtSOLines.Colum ns.Add("UnitMea sID", GetType(String) )
    dtSOLines.Colum ns.Add("Request Date", GetType(String) )
    dtSOLines.Colum ns.Add("TaxClas sID", GetType(String) )
    dtSOLines.Colum ns.Add("UserFld 1", GetType(String) )
    dtSOLines.Colum ns.Add("UserFld 2", GetType(String) )
    dtSOLines.Colum ns.Add("CustIte m", GetType(String) )
    dtSOLines.Colum ns.Add("UMKey", GetType(Decimal ))
    dtSOLines.Colum ns.Add("ExtdAmt ", GetType(Decimal ))
    dtSOLines.Colum ns.Add("ItemKey ", GetType(Integer ))

    'Attributes
    dtSOLines.Colum ns.Add("WidthE" , GetType(Decimal ))
    dtSOLines.Colum ns.Add("WidthM" , GetType(Decimal ))
    dtSOLines.Colum ns.Add("Core", GetType(Integer ))
    dtSOLines.Colum ns.Add("Diamete rE", GetType(Decimal ))
    dtSOLines.Colum ns.Add("Diamete rM", GetType(Decimal ))
    dtSOLines.Colum ns.Add("CustPar tNo", GetType(String) )
    dtSOLines.Colum ns.Add("AppLeve l", GetType(String) )
    dtSOLines.Colum ns.Add("Sides", GetType(Integer ))
    dtSOLines.Colum ns.Add("Orienta tion", GetType(String) )
    dtSOLines.Colum ns.Add("Notes", GetType(String) )

    Dim row As DataRow = dtSOLines.NewRo w()

    row("POLineNo") = 1
    row("ItemID") = "ITEM1"
    row("Descriptio n") = "Item Description"
    row("CustItem") = "CUSTITEM"
    row("Quantity") = 5
    row("UMKey") = 1
    row("UnitMeasID ") = "Each"
    row("Price") = 100
    row("ExtdAmt") = 500
    row("RequestDat e") = "03/07/2008"
    row("TaxClassID ") = ""
    row("UserFld1") = ""
    row("UserFld2") = ""
    row("ItemKey") = 1

    'Attributes
    row("WidthE") = 0
    row("WidthM") = 0
    row("Core") = 0
    row("DiameterE" ) = 0
    row("DiameterM" ) = 0
    row("CustPartNo ") = ""
    row("AppLevel") = ""
    row("Sides") = 0
    row("Orientatio n") = ""
    row("Notes") = ""

    'Save Attributes for this line
    'Call SaveLineAttrib( iPOLine)

    dtSOLines.Rows. Add(row)

    Session("SOLine s") = dtSOLines

    BindLines()
    End If
    End Sub
    End Class
Working...