unboundclient.vb
来自「wrox出版社的另一套经典的VB2005数据库编程学习书籍,收集了书中源码,郑重」· VB 代码 · 共 99 行
VB
99 行
Option Explicit On
Option Strict On
Imports System.Web.Services.protocols
Public Class UnboundClient
'Create the Web service client instances
Private wsOrder As New NWRemoteWS.NWOrdersWS
Private objOrder As New NWRemoteWS.Order
Private Sub btnConnect_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnConnect.Click
Try
'Load the combo box with the last 10 OrderIDs
Me.Cursor = Cursors.WaitCursor
Dim aintOrderID() As Integer
aintOrderID = wsOrder.GetLast10Orders
Dim intCtr As Integer
With cboOrderID
.Items.Clear()
For intCtr = 0 To aintOrderID.Length - 1
.Items.Add(aintOrderID(intCtr))
Next
.SelectedIndex = 0
End With
Catch excSoap As SoapException
Me.Cursor = Cursors.Default
MsgBox(excSoap.Message + excSoap.Code.ToString, , "Soap Exception")
Catch excSys As SystemException
Me.Cursor = Cursors.Default
MsgBox(excSys.Message + excSys.StackTrace, , "System Exception")
Finally
Me.Cursor = Cursors.Default
End Try
End Sub
Private Sub btnGetOrder_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles btnGetOrder.Click
Me.Cursor = Cursors.WaitCursor
Try
'Get the selected order and populate the form controls
With cboOrderID
'Get the Order object
objOrder = wsOrder.GetOrderSP(CInt(.Items(.SelectedIndex)))
End With
Me.Cursor = Cursors.Default
With objOrder
'Populate the list boxes
txtOrderID.Text = .OrderID.ToString
txtCustomerID.Text = .CustomerID
txtEmployeeID.Text = .EmployeeID.ToString
txtOrderDate.Text = .OrderDate.ToShortDateString
txtRequiredDate.Text = .RequiredDate.ToShortDateString
txtShippedDate.Text = .ShippedDate.ToShortDateString
txtShipVia.Text = .ShipVia.ToString
txtFreight.Text = Format(.Freight, "$#,##0.00")
txtShipName.Text = .ShipName
txtShipAddress.Text = .ShipAddress
txtShipCity.Text = .ShipCity
txtShipRegion.Text = .ShipRegion
txtShipPostalCode.Text = .ShipPostalCode
txtShipCountry.Text = .ShipCountry
'Set up and populate the ListView
lsvDetails.Items.Clear()
If .OrderDetails.Length < 7 Then
lsvDetails.Width = 364
Else
lsvDetails.Width = 381
End If
Dim intRow As Integer
For intRow = 0 To .OrderDetails.Length - 1
Dim astrItem(5) As String
astrItem(0) = .OrderDetails(intRow).OrderID.ToString
astrItem(1) = .OrderDetails(intRow).Quantity.ToString
astrItem(2) = .OrderDetails(intRow).ProductID.ToString
astrItem(3) = Format(.OrderDetails(intRow).UnitPrice, "$#,##0.00")
astrItem(4) = Format(.OrderDetails(intRow).Discount, "#0.0%")
'Calculate the extended amount
Dim decExt As Decimal = .OrderDetails(intRow).Quantity * _
.OrderDetails(intRow).UnitPrice * (1 - .OrderDetails(intRow).Discount)
astrItem(5) = Format(decExt, "$#,##0.00")
'Create a ListViewItem and add it
Dim lviItem As New ListViewItem(astrItem)
lsvDetails.Items.Add(lviItem)
Next
End With
Catch excSoap As SoapException
Me.Cursor = Cursors.Default
MsgBox(excSoap.Message + excSoap.Code.ToString, , "Soap Exception")
Catch excSys As SystemException
Me.Cursor = Cursors.Default
MsgBox(excSys.Message + excSys.StackTrace, , "System Exception")
Finally
Me.Cursor = Cursors.Default
End Try
End Sub
End Class
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?