mainform.vb

来自「清华大学出版社出版的 移动应用开发宝典 张大威(2008)的附书源代码」· VB 代码 · 共 70 行

VB
70
字号
Imports Microsoft.Practices.Mobile.Configuration
Imports Microsoft.Practices.Mobile.ConnectionMonitor
Imports Microsoft.Practices.Mobile.DisconnectedAgent
Imports Microsoft.Practices.Mobile.DataAccess
Imports Microsoft.Practices.Mobile.EndpointCatalog

Public Class MainForm

    Private iconnectionMonitor As ConnectionMonitor
    Private WithEvents irequestManager As RequestManager
    Private idatabase As Database
    Private iendpoints As IEndpointCatalog

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If AppDatabaseDataSetUtil.DesignerUtil.IsRunTime Then
            'TODO: Delete this line of code to remove the default AutoFill for 'AppDatabaseDataSet.Products'.
            Me.ProductsTableAdapter.Fill(Me.AppDatabaseDataSet.Products)
        End If

        InitializeRequestManager()

    End Sub

    Private Sub InitializeRequestManager()

        iconnectionMonitor = ConnectionMonitorFactory.CreateFromConfiguration()

        ' Init database object
        Dim filename As String = System.IO.Path.Combine(DirectoryUtils.BaseDirectory, "AppDatabase.sdf")
        Dim connectionString As String = String.Format("Data Source=""{0}""", filename)
        idatabase = New SqlDatabase(connectionString)

        ' ...and an IEndpointsCatalog
        Dim factory As IEndpointCatalogFactory = New EndpointCatalogFactory("Endpoints")
        iendpoints = factory.CreateCatalog()

        ' Finally init the Agent, using the database, endpoint catalog and connection monitor
        Dim connections As IConnectionMonitor = New ConnectionMonitorAdapter(iconnectionMonitor)
        irequestManager = RequestManager.Instance
        irequestManager.Initialize(iendpoints, connections, idatabase)
        irequestManager.StartAutomaticDispatch()

    End Sub

    Sub requestManager_RequestDispatched(ByVal sender As Object, ByVal e As RequestDispatchedEventArgs) Handles irequestManager.RequestDispatched
        If e.Result = DispatchResult.Failed Then
            MessageBox.Show("Request failed to endpoint: " + e.Request.Endpoint)
        End If
    End Sub


    Private Sub NewMenuItemMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewMenuItemMenuItem.Click
        ProductsBindingSource.AddNew()
        Dim productsEditViewDialog As DisconnectedServiceAgentExample.ProductsEditViewDialog = DisconnectedServiceAgentExample.ProductsEditViewDialog.Instance(Me.ProductsBindingSource)
        productsEditViewDialog.ShowDialog()

    End Sub

    Private Sub ProductsDataGrid_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ProductsDataGrid.Click
        Dim productsSummaryViewDialog As DisconnectedServiceAgentExample.ProductsSummaryViewDialog = DisconnectedServiceAgentExample.ProductsSummaryViewDialog.Instance(Me.ProductsBindingSource)
        productsSummaryViewDialog.ShowDialog()

    End Sub

    Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click
        Dim dlg As ViewOrdersDialog = New ViewOrdersDialog()
        dlg.ShowDialog()
    End Sub
End Class

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?