http://xml.sz.luohuedu.net/xml/Content.asphttp://msdn.microsoft.com/library/en-us/off2000/html/xlmscobjectmodelchanges2000.asp

解决方案 »

  1.   

    如何用取得的在表中的顺序值进行操作,表没有ID表。
    主要是那更新的代码如何写。<%@ Import Namespace="System.Data" %>
    <%@ Import Namespace="System.Data.sqlclient"%>
    <html>
    <script language="VB" runat="server">    Dim CartView As DataView
        Dim runningTotal As Double = 0    'Cart 是 Page 上的一个属性
        'ReadOnly Property Cart As DataTable
         '   Get
          '      Dim tmpCart As DataTable
          '      Dim i As Integer
          '      Dim dr As DataRow
    '
            '    If Session("DG_ShoppingCart") Is Nothing Then
            '        tmpCart = new DataTable()
             '       tmpCart.Columns.Add(new DataColumn("数量", GetType(String)))
              '      tmpCart.Columns.Add(new DataColumn("产品", GetType(String)))
               '     tmpCart.Columns.Add(new DataColumn("价格", GetType(Double)))
            '        tmpCart.Columns.Add(new DataColumn("礼品包", GetType(Boolean)))
             '       Session("DG_ShoppingCart") = tmpCart                ' 第一次加载 -- 预填充一些数据
              '      For i= 1 to 6
               '         dr = tmpCart.NewRow()
                '        dr(0) = "1"
               '         dr(1) = "产品" & i.ToString
               '         dr(2) = 1.23 * (i+1)
               '         dr(3) = false
               '         tmpCart.Rows.Add(dr)
               '     Next
               '     Return tmpCart
               ' Else
                '    Return Session("DG_ShoppingCart")
               ' End If
            'End Get
        'End Property    'Sub Page_Init(sender As Object, e As EventArgs)
        '    MyDataGrid.EnableViewState = true
        'End Sub    Sub Page_Load(sender As Object, e As EventArgs)
            'CartView = Cart.DefaultView
            If Not IsPostBack Then
                BindGrid
            End If
        End Sub    'Sub BindGrid()
          '  MyDataGrid.DataSource = CartView
          '  MyDataGrid.DataBind()
       ' End Sub
        
        
         Sub BindGrid()
        Dim objconnection1 As SqlConnection '定义连接
            Dim strConnection1 As String = "user id=sa;password=1979;database=Northwind;server=192.168.0.253;connect Timeout=30"
            objconnection1 = New SqlConnection(strConnection1) '引用
            Dim strsql As String = "select * from customers"
            Dim objDataSet As New DataSet()
            Dim objadapter As New SqlDataAdapter(strsql, objconnection1)
            objadapter.Fill(objDataSet, "testtable")
            Dim objtable As DataTable
            objtable = objDataSet.Tables("testtable")
            Dim objDataView As New DataView(objDataSet.Tables("testtable"))
            
            MyDataGrid.DataSource = objDataView
            MyDataGrid.DataBind()
            'objDataSet.close
            objconnection1.close
        End Sub    Sub btnUpdate_click(sender As Object, e As EventArgs)
            Dim i As Integer
            Dim _item As DataGridItem
            Dim dr As DataRow        For i = 0 To MyDataGrid.Items.Count - 1            _item = MyDataGrid.Items(i)
                Dim qtyTextBox As TextBox= _item.FindControl("txtQty")
                Dim giftCheckBox As CheckBox = _item.FindControl("chkGIft")
    'response.write (qtyTextBox.Text &"<br>")
     Dim objconnection2 As SqlConnection '定义连接
     Dim strConnection2 As String = "user id=sa;password=1979;database=Northwind;server=192.168.0.253;connect Timeout=30"
       objconnection2 = New SqlConnection(strConnection2) '引用
       
    if giftCheckBox.Checked=True then
    objconnection2.open()
    Dim strsql="update customers set testint='"&qtyTextBox.Text &"' "
    response.write (strsql)
    response.end
    end if
        ' 对于数据库,我们应使用一条更新命令。
                ' 因为这是一个内存内数据表,所以我们只更改内存内的行。
              '  dr = Cart.Rows(i)
              '  dr(0) = qtyTextBox.Text
              '  dr(3) = giftCheckBox.Checked
            Next
            BindGrid
        End Sub
     '   Function CalcTotal (count As Integer, price As Double) As Double
      '      Dim total As Double
    '
     '       total = count * price
      '      runningTotal += total
    '
     '       CalcTotal = total
     '   End Function </script>
    <body>
    <h3><font face="宋体">DataGrid 的自定义编辑</font></h3>
    <form runat="server" ID="Form1">
    <ASP:DataGrid id="MyDataGrid" runat="server" BorderColor="black" BorderWidth="1" GridLines="none" CellPadding="4" Font-Name="宋体" Font-Size="8pt" HeaderStyle-BackColor="#aaaadd" AutoGenerateColumns="false">
    <Columns>
    <asp:TemplateColumn HeaderText="companyname">
    <ItemTemplate>
    <asp:TextBox id=txtQty runat="server"
                            Text='<%# DataBinder.Eval(Container.DataItem, "testint") %>'
                            Width="40px"
                            />
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:BoundColumn HeaderText="companyname" DataField="companyname" />
    <asp:BoundColumn HeaderText="companyname" DataField="companyname" DataFormatString="{0:c}" />
    <asp:TemplateColumn HeaderText="testint">
    <ItemTemplate>
    <center>
    <asp:CheckBox id="chkGIft" runat="server" />
    </center>
    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    </ASP:DataGrid>
    <asp:LinkButton id="btnUpdate" runat="server" Text="更新合计" Font-Name="Verdana" Font-Size="9pt" onClick="btnUpdate_click" />
    </form>
    </body>
      

  2.   

    找到一个例子,关于问题二。表里面没有ID一样可以处理的。例子是使用sql2000自带的数据库,你可以自己演示。<%@ import namespace="System.Data" %>
    <%@ import namespace="System.Data.SqlClient" %>
    <script language="vb" runat="server">
     private sSqlCon as string  = "server=localhost;uid=sa;pwd=;database=northwind" public sub Page_Load(sender as Object, e as EventArgs)   if not IsPostBack then
        Bind()
       end if end subprivate sub Bind()  dim SqlCon as new SqlConnection(sSqlCon)
      dim SqlCmd as new StringBuilder()
       SqlCmd.Append("SELECT ProductName,UnitPrice,")
       SqlCmd.Append("UnitsInStock,UnitsOnOrder,")
       SqlCmd.Append("ProductID FROM Products")
      dim sda as new SqlDataAdapter(SqlCmd.ToString(),SqlCon)
      dim ds as new DataSet()
      sda.Fill(ds,"products")
      DGProducts.DataSource = ds.Tables("Products").DefaultView
      DGProducts.DataBind()end subpublic sub DGProducts_Edit(sender as Object, e as DataGridCommandEventArgs) DGProducts.EditItemIndex = e.Item.ItemIndex
     Bind()end subpublic sub DGProducts_Cancel(sender as Object, e as DataGridCommandEventArgs) DGProducts.EditItemIndex = -1
     Bind()end subpublic sub DGProducts_Update(sender as Object, e as DataGridCommandEventArgs) dim sProductName,sUnitsInStock,sUnitsOnOrder,sProductID as string
      sProductName = CType(e.Item.Cells(1).Controls(0), TextBox).Text
      sUnitsInStock = CType(e.Item.Cells(2).Controls(0), TextBox).Text
      sUnitsOnOrder = CType(e.Item.Cells(3).Controls(0), TextBox).Text
      sProductID = e.Item.Cells(5).Text dim sSqlCmd as new StringBuilder()
      sSqlCmd.Append("UPDATE Products ")
      sSqlCmd.Append("SET ProductName = @ProductName,")
      sSqlCmd.Append("UnitsInStock = @UnitsInStock,")
      sSqlCmd.Append("UnitsOnOrder = @UnitsOnOrder ")
      sSqlCmd.Append("WHERE ProductID = @ProductID") dim SqlCon as new SqlConnection(sSqlCon)
     Dim SqlCmd as new SqlCommand(sSqlCmd.ToString(),SqlCon)
      SqlCmd.Parameters.Add(new SqlParameter("@ProductName", SqlDbType.NVarChar, 40))
      SqlCmd.Parameters("@ProductName").Value = sProductName
      SqlCmd.Parameters.Add(new SqlParameter("@UnitsInStock", SqlDbType.SmallInt))
      SqlCmd.Parameters("@UnitsInStock").Value = sUnitsInStock
      SqlCmd.Parameters.Add(new SqlParameter("@UnitsOnOrder", SqlDbType.SmallInt))
      SqlCmd.Parameters("@UnitsOnOrder").Value = sUnitsOnOrder
      SqlCmd.Parameters.Add(new SqlParameter("@ProductID", SqlDbType.SmallInt))
      SqlCmd.Parameters("@ProductID").Value = sProductID SqlCon.Open()
     SqlCmd.ExecuteNonQuery()
     SqlCon.Close() DGProducts.EditItemIndex = -1
     Bind()end sub</script>
    <html>
      <body>
       <head>    <style rel="stylesheet">
         H3 { font: bold 11pt Verdana, Arial, sans-serif; }
         .products { font: 9pt Verdana, Arial, sans-serif; }
         .productsHead { font: bold 9pt Verdana, Arial, sans-serif;
          background-color:Maroon; color:white; }
         a { text-decoration:none; }
         a:hover { text-decoration:underline; color:maroon; }
       </style>  </head>
        <form runat="server">
    <H3>Northwind Inventory Management - VisualBasic.NET</H3><asp:DataGrid
     id="DGProducts"
     runat="server"
     Cellpadding="4" Cellspacing="0" Width="750"
     BorderWidth="1" Gridlines="None"
     AlternatingItemStyle-BackColor="Tan"
     HeaderStyle-CssClass="productsHead"
     Font-Size="12"
     AutoGenerateColumns="false"
     OnEditCommand="DGProducts_Edit"
     OnCancelCommand="DGProducts_Cancel"
     OnUpdateCommand="DGProducts_Update"
     >
     <Columns>
     <asp:EditCommandColumn
      ButtonType="LinkButton"
      CancelText="Cancel"
      EditText="Edit"
      UpdateText="Update"
      />
     <asp:BoundColumn DataField="ProductName" HeaderText="Product Name" />
     <asp:BoundColumn DataField="UnitsInStock" HeaderText="Units in Stock" />
     <asp:BoundColumn DataField="UnitsOnOrder" HeaderText="Units on Order" />
     <asp:BoundColumn DataField="UnitPrice" HeaderText="Price Per Unit"
      DataFormatString="{0:C}" ReadOnly="true" />
     <asp:BoundColumn DataField="ProductID" HeaderText="Product ID"
      ReadOnly="true" />
     </columns>
    </asp:DataGrid>
      </form>
     </body>
    </html>
      

  3.   


    <body>
    <table width="750" align="center">
    <tr>
    <td>
    <form id="Form1" runat="server">
    <asp:datagrid id="DGProducts" runat="server" OnUpdateCommand="DGProducts_Update" OnCancelCommand="DGProducts_Cancel" OnEditCommand="DGProducts_Edit" AutoGenerateColumns="False" Font-Size="14px" HeaderStyle-CssClass="productsHead" AlternatingItemStyle-BackColor="Tan" Gridlines="None" BorderWidth="0px" Width="750px" Cellpadding="4" PageSize="5" AllowPaging="True" onpageindexchanged="pagechanged" PagerStyle-Mode="NumericPages">
    <FooterStyle HorizontalAlign="Right"></FooterStyle>
    <HeaderStyle ForeColor="Beige" CssClass="productsHead" BackColor="#0099CC"></HeaderStyle>
    <AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
    <Columns>
    <asp:EditCommandColumn ButtonType="LinkButton" UpdateText="Update" CancelText="Cancel" EditText="Edit">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:EditCommandColumn>
    <asp:BoundColumn DataField="fcid" HeaderText="序号">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="vfcdate" HeaderText="登记时间">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcch" HeaderText="发车序号">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcbusno" HeaderText="车号">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcneze" HeaderText="本次营运总额">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcfhfq" HeaderText="发货人付清">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcdqgs" HeaderText="发货人定期结算">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcshdsef" HeaderText="收货公司代收运费">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcpczsfe" HeaderText="本次租车费用">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcfhzfzc" HeaderText="发货公司支付租车运费">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fczfdate" HeaderText="付车费时间">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    <asp:BoundColumn DataField="fcshzf" HeaderText="收货公司代收租车运费">
    <HeaderStyle HorizontalAlign="Center" Width="62px"></HeaderStyle>
    </asp:BoundColumn>
    </Columns>
    </asp:datagrid>
    </td>
    </tr>
    <tr>
    <td>
    <asp:label id="lblPageCount" runat="server" Font-size="12px"></asp:label><asp:label id="lblCurrentIndex" runat="server" Font-size="12px"></asp:label><asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server" Font-size="8pt" CommandArgument="0" ForeColor="navy" Font-Name="verdana"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnPrev" onclick="PagerButtonClick" runat="server" Font-size="8pt" CommandArgument="prev" ForeColor="navy" Font-Name="verdana"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnNext" onclick="PagerButtonClick" runat="server" Font-size="8pt" CommandArgument="next" ForeColor="navy" Font-Name="verdana"></asp:linkbutton>&nbsp;
    <asp:linkbutton id="btnLast" onclick="PagerButtonClick" runat="server" Font-size="8pt" CommandArgument="last" ForeColor="navy" Font-Name="verdana"></asp:linkbutton>
    </td>
    </tr>
    </FORM>
    </table>
    </body>
    </HTML>