You are on page 1of 29

c  



 

.

  c    .

   .

  .

   .

 .

.

    .

 c .

 .

.

.

 .

         .

 .

.

 .

.

 .

  .

.

    .

   .

    .

       .

    .

    .

.

 .

.

.

.

 .

.

.

 .

.

.

 .

 .

       .

.

   .

 .

   .

.

.

.

  c.

.

  p Ô.

ë .

.

  ! .

.

.

 .

 .

.

ë .

.

  "p Ô.

.

.

.

 .

.

#.

 .

 .

$%&'.

c .

.

 .

  (.

 .

.

   .

 .

  )p Ô.

^   &.

.

  .

 .

  .

 .

.

* .

   '#     '.

 .

#.

^    +p ! .

. .

.

.

.

  .

.

.

  .

.

#'.

  .

 -p Ô.

.

.

 '#  .

.

.

  .  .

.

.

 .

 .

 .

.

c.

.

 & .

.

  #.

.

.

 .

 .

 .

 .

   .

.

  Ô .

  .

     .

   .

   !p & .

 .

/- ë .

  c .

 .

#  .

  .

.

 .

Customer.

 .

 .

 .

.

  .

  .

.

0    .

 .

.

# .

 .

Customer1 .

.

 '.

.

   .

.

.

Customer.

 .

  .

 .

 .

 .

 .

 !p CustomerPropertySyntax.

   .

 .

Customer.

.

.

.

  .

AccountNumber  .

   2 #.

 .

AccountNumber  .

 .

.

   .

!p CustomerWithConstructor.

   .

Customer.

 .

     .

.

.

.

  .

 .

.

  .

 .

 .

    !p CustomerWithParameterizedProperty.

 .

  .

Customer.

 .

   .

.

    .

  !p CustomerWithSharedMembers .

  .

  3    .

 Customer .

c .

 .

.

    c       .

  .

.

 .

  .

     .

 .

   .

   .

.

  .

 c .

 .

.

.

 .

         .

 .

.

 .

.

 .

  .

.

    .

   .

    .

       .

    .

    .

.

 .

.

.

.

 .

.

.

 .

.

.

 .

 .

       .

.

   .

 .

   .

.

.

.

  c.

.

  p Ô.

ë .

.

  ! .

.

.

 .

 .

.

ë .

.

  "p Ô.

.

.

.

 .

.

#.

 .

 .

$%&'.

c .

.

 .

  (.

 .

.

   .

 .

  )p Ô.

^   &.

.

  .

 .

  .

 .

.

* .

   '#     '.

 .

#.

^    +p ! .

. .

.

.

.

  .

.

.

  .

.

#'.

  .

 -p Ô.

.

.

 '#  .

.

.

 .  .

.

.

 .

 .

 .

.

c.

.

 & .

.

  #.

.

.

 .

 .

 .

 .

   .

.

  Ô .

  .

     .

   .

   !p & .

 .

/- ë .

  c.

.

.

    .

c .

 .

 .

.

c   SD.

 .

 .

.

  .

.

  . cc22Form1.

 .

    .

.    .

.

.

.

  #.

 # .

  SD.

.

  .

 .

 #.

  SDc  (.

 .

   3  .

     .

.

4 .

!p .

.

.

 .

 .!.

 SD.

.

.

 .

 .

  .

  4   5 678 !p .

.

.

.

   ." #$  !.

c  SD.

.

 #.

 .

    .

  .

.

ë    .

c % c  .

.

.

 .

.

 .

.

    9 /  .

 .

    .

:.%5 .

  .

.

     .

   .

 .

.

    *   .

 c .

 .

.

.

 .

         .

 .

.

 .

.

 .

  .

.

    .

   .

    .

       .

    .

    .

.

 .

.

.

.

 .

.

.

 .

.

.

 .

 .

       .

.

   .

 .

   .

.

.

.

  c.

.

  p Ô.

ë .

.

  ! .

.

.

 .

 .

.

ë .

.

  "p Ô.

.

.

.

 .

.

#.

 .

 .

$%&'.

c .

.

 .

  (.

 .

.

   .

 .

  )p Ô.

^   &.

.

  .

 .

  .

 .

.

* .

   '#     '.

 .

#.

^    +p ! .

. .

.

.

.

  .

.

.

  .

.

#'.

  .

 -p Ô.

.

.

 '#  .

.

.

  .  .

.

.

 .

 .

 .

.

c.

.

 & .

.

  #.

.

.

 .

 .

 .

 .

   .

.

  Ô .

  .

     .

   .

   !p & .

 .

/- .

.

     p c .

c.

.

 '.

.

 .

ë    "p (  c* .

' .

  .

  .

  .

<  =.

 è! .

 .

ë   (.

.

 .

.

.

.

 )p ( #.

 .

  '.

.

 ! .

 .

 ë    .

ë .

  c .

.

.

.

 .

 .

   .

  .

.

  .

.

 .

  .

  .

4 !p  .

c  ptions.

.

     .

.

.

    .

 *    # .

# .

   !p #.  .

  .

.

! !!  .

.

.

 .

 .

 .

.

.

.

.

.

 .

# !p c  . .

   .

     3      .

     .

.

.  !p A .

>>#.

# .

 .

. .

..

>&>'.

    .

  .

.

 ! .

.

 .

 #   .

  .

  .

?c@/  .

9 A4 !p %ë .

 .&' .

.

.

 .

.

 .

.

.

.

 .

 .

   .

.

 .

.

.

   .

^  .

 !p    .

.   .

 *   .

 .

 .

.

B.

   !p .

.

 .

 .    .

.

.

 .

    .

 .

#    .

.

   .  ..

.

.

  .

    .

 . *ridBlock.

 PointTranslator .

  .

.

.

  .

 . .

HighScores    .

.

 .

.

.

 .

.

   .

   .

c .

.

.

(#".

 c .

.

.

.

 .

 .

   .

    .

.

#    .

  .

.

.

.

      .

 .

 .

.

@ 3  .

 .

   .

.

.

.

     #.

.

.

.

  .

  .

  .

    #.

.

 .

 .

    .

 c .

 .

.

.

 .

         .

 .

.

 .

.

 .

  .

.

    .

   .

    .

       .

    .

    .

.

 .

.

.

.

 .

.

.

 .

.

.

 .

 .

       .

.

   .

 .

   .

.

.

.

  c.

.

  p Ô.

ë .

.

  ! .

.

.

 .

 .

.

ë .

.

  "p Ô.

.

.

.

 .

.

#.

 .

 .

$%&'.

c .

.

 .

  (.

 .

.

   .

 .

  )p Ô.

^   &.

.

  .

 .

  .

 .

.

* .

   '#     '.

 .

#.

^    +p ! .

..

.

.

.

  .

.

.

  .

.

#'.

  .

 -p Ô.

.

.

 '#  .

.

.

  .  .

.

.

 .

 .

 .

.

c.

.

 & .

.

  #.

.

.

 .

 .

 .

 .

   .

.

  Ô .

  .

     .

   .

   !p & .

 .

/- ë .

  c       .

.

 .

  .

#.

'  #.

.

  .

  .   .

 .

.

  Rehicle.

.

 .

.

#   .

Automobile BoatBicycle1 .

.

#  .

 .

.

 4 ..

.

  3 .

  .

 .

 .

.

  .

#  3  .

.

 .

.

 <   .

 = .

   .

.

 .

 .

c* .

 3   .

.

.

  DepartmentMotorRehicles.

  .

.

  .

  .

.

 .

   .

3  .  .

 .

 .

.

    .

  .

.

  .

   .

  4 & #.

 2  G   (.

.

AutomobileBoatBicycle   .

Rehicle.

 .

 .

 G     G    (.

.

 .

DepartmentMotorRehiclesc  .

 .

.

    .

 .

 G    (.

.

 .

Rehicle(  .

.

.

 .

    .

  .

.

 .

 .

# .

Rehicle ?    c 3egister.

 .

Boat .

  .

       . .

 *  .

 .

  ?    (.

.

 .

Rehicle.

 .

ID.

   .

 .

.

 .

 .

  .

  .

.

# .

.

 .

.

  #.

  ?    (.

.

  .

 .

.

# .

 .

CurrentRalue  .

.

   .

.

  .

.

.

 .

 .

 .

 ?    (.

.

 .

  .

 .

Rehicle<ComputeegistrationFee Salary=! .

.

  .

    .

 .

.

 .

Rehicle.

.

  .

.

 .

.

  .

.

# .

 .

     MustInherit ^    (.

.

 .

Bicycle.

 3egister Ô   (.

.

  .

   .

     .

.

  .

  .

    .

   .

.

 Ô  (.

.

   .

 .

Rehicle(.

.

.

.

.

.

.

       .

.

 .

Rehicle  .

.

# .

 .

.

  .

.

.

  º    (.

.

 .

DepartmentMotorRehiclesc  .

 .

.

.

   .

 .

 .

.

.

.

 .

.

.

 Ô   (.

.

    .

c       .

.

.

 .

.

.

   ^   (.

.

 3 .

 .

DepartmentMotorRehiclesc .

.

    .

DepartmentMotorRehicles   .

.

  .

 .

A .

)ë .

 .

'.    .

.

# .

.

#.

   .

.

   .

 .

   .

 .

# c .

.

   .

.

 .

     .

  .

 .

.

 .

(.

   .

.

 .

  .

 .

 .

  .

#  .

'.

.

.

   .

  . .

.

.

  .

.

4 !p 1 .

   .

.

.

.

 .

.

 .

    .

 !p ! .

     .

.

.

  .

.

# .

   .

.

    !p ! .

   .

 .

    '.

.

.

 .

   .

 !p 1 .

   .

.

 .

   .

'.

.

.

.

.

 & . .

.

  .

    .

.

.

.

* .

.

 .

  .

 #  .

 .

    '.

.

   .   .

   .

 .

..

 .

#.

.

.

.

 .

 .

  .

!.

   .

   #.

 &      .

  .

.

# .

.

 ' .

 .

.

 .

*. .

.

  & .

.

     #.

    .

   ^   .

  c  .

 .

 .

 .

   .

 .

 .

.

.

#      +  '.

.

 p c .

 .

. .

 .

   '.

.

#    .

 .

 .

#  "p 1 .

.

    9 .

  .

è .

.

#& .

.

    .

#.

- -         )p &  .

  .

.

 .

.

 .

   #.

   9 '  .

  .

  .

  .

<  =.

.

 .

 .

.

è .

.

#.

.

 c.

.

  .

.

 .

.

  +p c   .

.

.

 .

 .

.

.

 .

 .

  .

$ "      '.

  .

 -p c .

 .

..

 .

%.

.

    .

 .

  '# .

   .

.

.

   .   .

 .

  .

.

  #.

  .

  .

   .

&     '.

.

#  .

    .

    #.

.

.

.

.

.

.

   .

.

  ' .

 .

.

.

.

 +.

.

'.

.

 ' .

 p c '$ ".

.

..

.

.

  '.

.

    .

     2.

.

  .

  .

      "p c #.

 & .

.

.

.

  .

.

 .

.

.

 4 !p c .

 .

A .

* !p c .

 .

 .

 .

   !p c .

 .

 ' .

.

.

  c .

.

    .

 '.

.

 .

.

-    .

.

.

 .

   )p Ô.

.

.

 *  .

     .

.

#.

  .

.

#.

. . +p ! .

.

 .

.

 .

.

    .

.

#.

World!") Este idioma no es compatible o no hay ningún ejemplo de código disponible .Show("Hello. .  4 MessageBox. MessageBox.Show("Hello. World!").

.

.

 + ' .

.

.

'.

.

 p 1 .

# .

 .

'.

.

'.

-!/ë 012.

-! /ë 02.

 .

-! /ë 01  .

.

c .

   .

  !CD(5/E "p ! .

.

  .

  .

.

   .

.

  .

    4 !p c .

 .

A .

^#%# !p c .

 .

 .

 .

  !p c .

 .

 ' .

.

.

 c  .

    .

'.

.

  .

.

-    .

.

.

 .

  )p Ô.

.

.

 ^#%#  .

     .

.

#.

  .

.

#.

 .  .%   .

.

 .

.

 .

.

 .

 .

.

.

#.

Show ("Goodbye!").Show ("Goodbye!") Este idioma no es compatible o no hay ningún ejemplo de código disponible . 4 MessageBox. +p c . MessageBox.

 .

%. .

.

.

%.

.

.

è .

.

# .

.

 .

.

 .

 2 #.

.

.

.

 .

.

.

 .

   .

# .

.

'.

.

.

.

   .

 .

.

 .

  .

 .

.

.

# +  '.

.

+.

'.

.

 p c .

 .

. .

 .

.

.

.

#     .

.

 .

.

#     .

 .

.

#  "p 1 .

.

    9 .

   .

 A & .

.

    .

#.

- -         .

.

.

'.

.

.

 .

p Ô .

  .

  .

  .

.

.

 .

 .

 A  .

.

 .

 .

.

   .

.

'.

.

.

 "p c .

 .

.

.

   .

.

.

 .

.

 .

.

 .

.

 '.

.

.

 )p c .

 .

^ .

.

  .

.

 .

.

-.

.

 .

 .

è .

.

#   .

.

 .

#'.

.

 '.

  .

 1 .

 .

 .

   .

.

 .

 .

 A .

.

#.

  .

 .

è .

.

# +p Ô.

   .

  '.

.

.

.

 ..

 .

  . 9 /  .

.

 c .

 ..

 .

 9 /   .

'.

.

 .

.

 <=.

.

  .

    .

  '.

.

  -p (.

.

 .

.

 * .

#.

   .

 '. .

.

.

  .

.

 #.

 .

.

       .

       .

.

.

  .

 Fp (.

.

 .

.

   # .

#.

.

 .

.

  .

 !.

 .

 #.

 .

   .

.

.

'  .

.

.

    .

  .

.

.

 .   & .

.

 .

.

  .

  .

.

 G .

.

      .

'.

 .

 .

   .

''.

.

.

   Ep Ô .

  .

  .

  .

.

.

 .

 .

 A .

.

c.

.

   .

.

 .

c  .

 .

#    Hp Ô .

  .

  .

  .

.

.

 .

 .

 A .

.

c.

.

      .

.

 .

.

 c .

 .

&  .

 A .

.

#.

.

.

.

     .

.

  '.

.

 < .

.

.

.

3= Ip & .

 .

/- .

.

   .

#.

.

   .

.

  '.

.

      .'.

.

.

   .

.

    .

    !   .

# .

.

.

 .

 .

 .

.

   .

  1.

  .

 .

.

.

.

 .

 .

 !   .

.

.

.

 .

 .

# .

.

  .

.

.

.

.

 .

  & .

.

 3  .

  .

   '.

.

< .

 .

.

 .

 .

.

 =.

.

^ .

.

 ! .

.

   .

   .

     .

<).

 1J=& .

.

     #.

-      º    .

)*..

.

'.

.

$ ".

 .  .

 .

 .

#     9 /  .

 .

'.

.

  .

    .

.

    .

   .

 .

    .

.

.

 .

 .

 .

#   #.

 .

 .

 .

.

.

 & .

.

       .

'.

.

.

   .

.

.

 .

 .

 .

.

  .

^ .

.

   .

    #  .

.

  #.

.

.

 .

 .

    .

'.

.

 #.

       .

^      & '.

.

 .

   .

 '#.

.

.

   .

.

 .

.

'   .

.

'.

.

.

.

     '#.

.

.

...& .

.

 .

 .

.

 %.

.

.

.

 .

%. .

.

!.

 .

 .

.

  .

  .

.

'.

.

.

    .

.

.

.

.

   .

   . .

   .

 .

. .

 .

#.

   .

    .

   .

!.

.

.

.

   ##.

  &       .

 .

.

#.

.

 ' .

 .

.

 .

*. .

.

  &  .

.

     #.

   .

   ^  .

.

.

'.

.

  .

.

  p c  .

 .

.

  .

.

.

.

.

   .

.

 .

.

.

  .

 .

.

'.

.

  "p c .

  .

 .

 .

.

  .

.

.

  .

.

#'.

.

 . .

.

.

 .

.

  .

.

.

   .

.

 .

.

.

   .

   .

   .

.

    .

Form1 1 '. Ô blicClass Form2 Inherits Namespace1.

.

.

   .

.

.

.

.

.

    .

     .

.

.

#.

  .

 .

   #.

.

 .

.

#.

.

 .

    .

 .

 .

 '.

.

   .

A .

)%.

.

     ! .

.

.

.

 .

 .

.

.

.

.

.

  .

.

.

 .

.

# .

  .

.

.

  .

#   .

.

.

.

.

  .

.

.

  .

.

 .

.

 .

&.

.

  .

 .

       .

 .

.

 .

    .

.

.

 .

 # .

 .

.

   * #.

.

 .

 .

.

   .

.

 &  .

    .

     .

  . .

.

.

 .

.

#!^ &  .

.

     #.

 ^ .

?  c .

.

  .

 .

  .

èoan  .

 .

      .

  '#G    .

 .

.

    .

 '###.

 .

 .

.

& .

 .

.

 .

  .

     .

.

.

  (0!&  .

 c .

.

.

.

 .

 .

  .

# '# .

 '# .

* .

(   .

.

 .

    '# .

.

 .

.

.

  .

 .

 .

 .

 .

.

 ..

   .

.

.

.

     .

  .

.

( .

  .

 '#.

* .

   .

   .

  $.

  #.

 .

 &   .

 .

.

 .

 .

 .

   .

  .

 .

  '#  .

 .

.

  .

.

  #.

     '#<.

 .

  .

.

 #.

 1 .

.

  .

=@ 3 .

   .

 .

   .

 .

 .

   .

.

 .

 .

 .

! '# .

     .

 c .

.

.

.

 .

 .

  .

  .

 '#  (0!&c      .

 .

.

     .

.

    .

    .

 .

.

   . 3   .

    .

 .

. .

 .

#.

.

.

.

 .

 .

  .

! .

.

.

.

 # .

.

   .

.

 # &       .

.

 .

 .

.

#.

.

 ' .

 .

.

 .

.*.

.

  & .

.

      #.

   .

   ^  .

.

  è  c  .

   .

.

 .

   .

èoan  .

 .

.

.

.

 .

 .

 .

.

 è .

p 1 .

.

  .

# .

.

.

 .

.

  .

>. 1 >& .

.

      #.

- -      "p c .

c .

   .

.

   .

.

 .

.

>1 >>. > )p ! .

.

 .

  .

  .   .

.

4 Ô blicLoanAmo ntAsDo ble = 10000.5 Ô blic Term AsInteger = 36 Ô blicC stomerAsString @ 3 .0 Ô blicInterestRateAsDo ble = 7.

 .

 .

     .

.

.

 .

èoan .

 .

.

  .

 p c .

 .

..

  .

.

  .

!   9   G .

.

 .

.

   '.

.

#  "p c .

 .

.

.

.

# .

 è .

   .

.

  .

'.

  .

 .

 .

 .

 )p c .

c.

.

  .

.

 .

.

 .

. ! +p c .

 .

..

# '.

c  .

 .

#    -p c .

 .

..

# '.

.

.

.

'.

  Fp c .

 .

.

.

.

'.

 '.

'.

#  .

.

 .

.

  .

 1  Ep Ô..

  .

 .

 .

 .

 Hp c .

 .

  .

.

   .

A    Ip c .

c .

   .

.

.

 .

.

ToString TextBox4.C stomer EndS b .InterestRate.EventArgs) HandlesMyBase.ToString TextBox2. ByVal e As _ System.Load TextBox1.ToString TextBox3..Text = TestLoan.Text = TestLoan.LoanAmo nt.Term.Object.Text = TestLoan.Text = TestLoan.Loan ÔrivateS b Form1_Load(ByVal sender AsSystem. 4 ÔrivateTestLoanAsNewLoanClass.

.

.

 .

.

.

.

 .

.

  0 .

#.

.

 # .

 .

.

.

  .

  .

èoan .

.

.

   .

.

*& .

.

  .

# .

.

 .

3 .

E-E     .

.

 .

.

..

.

 .

#G   .

.

# #.

#.

 .

.

  .

.

.

 4E- c .

   .

  .

 .

3   .

  .

.

.

    .

.

#.

.

 .

 .

.

 c  .

'.

.

.

  .

.

.

 .

3 #.

.

 .

.

.

.

   .

 .

   .

.

 .

3    .

.

.

.

 .

    .

 c .

   .

.

' .

* .

.

.

 .

  .

  .

.  D.

.

  .

.

.

    .

&    # .

.

 .

   ..

.

.

   .

 .

 .

 ^.

  .

.

.

  .

  !p 1 .

.

  .

 .

. .

  .

.

4 c ^.

    .

.

 .

.

 .

 .

.

.

  .

   '#c .

.

 .

 .

.

 .

.

.

  .

 .

 Interestate   .

  CustomerèoanAmountPeriodc ^.

  .

.

.

      .

  .

 .

.

 .

.

   .

&   .

.

  .

.

.

.

.

 .

  .

*.

.

 .

 Customer .

 .

+ .

.

  !p 1 .

.

  .

 .

 Customer.

  .

.

4 lNonSerialized()>Ô blic C stomer AsString c  .

.

.

 .

 .

 .

 .

 !&  .   .

  .

 .

  .

  '#  .

 .

   .

^ G?^  ^  ! &   .

.

.

.

      .

 .

 .

.

      .

 .

.

.

.

'.

  .

 !p ! .

.

  .

.

   .

 .

 .

.

 .

Serialization.Form14 Imports System.IO ImportsSystem.Binary c .R ntime.Formatters.

.

 .

    .

    .

.

.

      .

 .

.

.

.

   .

    .

.

.

  (0!& c  .

.

.

 .

   .

.

 .

.

.

 '#  .

 .

.

 .

.

 .

   p ! .

.

   .

 .

 .

   .

.

 '#.

  .

  ConstFileNameAsString = "SavedLoan.bin" "p .

.

 .

 .

 .

.

.

#.

 Form1_èoad.

  .

.

4 ÔrivateS b Form1_Load(ByVal sender AsSystem.EventArgs) HandlesMyBase.OpenRead(FileName) .Load IfFile.Object.Exists(FileName) Then DimTestFileStreamAs Stream = File. ByVal e As _ System.

LoanClass.Deserialize(TestFileStream).Term. DimdeserializerAsNewBinaryFormatter TestLoan = CType(deserializer.C stomer EndS b @.Text = TestLoan.ToString TextBox3.Text = TestLoan.Text = TestLoan.Close() EndIf TextBox1.LoanAmo nt.Text = TestLoan.InterestRate.Loan ) TestFileStream.ToString TextBox2.ToString TextBox4.

.

.

.

  .

.

.

.

   .

.

 '#.

* .

(.

  .

.

  .

 ^ .

.

.

 '#    .

A# .  º    c 3.

   #.

 .

.

 .

.

.

.

.  !   .

.

.

 .

          .

   .

.

*.

  .

èoan  .

  .

.

  '# .

.

.

 #.

 .

  !p ! .

.

.

 .

.

  .

 .

.

.

#.

Closing TestLoan.Text DimTestFileStreamAs Stream = File.Text.C stomer = TextBox4. Do ble) TestLoan. ByVal e As _ System.Text.Serialize(TestFileStream. Integer) TestLoan. Form1_Closing4 ÔrivateS b Form1_Closing(ByVal sender AsSystem.InterestRate = CType(TextBox2.Term = CType(TextBox3.Text.Close() EndS b .CancelEventArgs) HandlesMyBase.ComponentModel.. TestLoan) TestFileStream.Object.LoanAmo nt = CType(TextBox1. Do ble) TestLoan.Create(FileName) DimserializerAsNewBinaryFormatter serializer.

.

.

 .

.

.

.

 .

.

 .

 .

# %  .

.

 # .

  .

.

.

   .

.

.

   .

.

*& .

.

   # .

.

       .

 .

.

  .

.

*1.

.

    .

.

..

.

 .

#0 .

#.

.

  # .

 .

#  .

.

' .

   .

.

*.

*.

.

   .

.

.

.

.

 .

     ^.

  %.

.

   '.

 ^  c .

.

.

.

 .

'   ' '     .

.

 .

.

.

*       .

 .

 .

   .

  .

 9 G  .

     .

.

  .

# .

K..

.

   .

.

.

  '#K. .

 .

   (0!&.

   .

.

 .

&   .

.

.

  (0!&  .

.

.

'.

.

 .

.

.

 .

^ º .  .

^.

 .

 .

.

.

  .

.

   .

4 ^ "  ^  ! º ^  .

.

.

   '.

 ^ p c .

c.

.

  .

.

 .

.

 .

. ! "p c .

 .

. .

# '.

.

.

.

'.

  )p c .

 .

.

.

.

'.

 '.

'!cA .

.

 .

.

   .

.

^# !  !^.

  !.

 .

!^ +p Ô.

  .

 .

 .

 .

 -p c .

c .

   .

.

     .

 .

.

 Form14 ImportsSystem.Formatters.Serialization.Soap Fp 1 .R ntime.

.

   .

.

 '#.

binSavedèoan.xml Ep c .Savedèoan.

 .

 .

.

.

#.

 Form1_èoad .

   ë .

 Dimdeserializer As New BinaryFormatter4 DimdeserializerAsNewSoapFormatter Hp c .

 .

 .

.

.

#.

 Form1_Closing .

   ë .

 Dimserializer As New BinaryFormatter4 DimserializerAsNewSoapFormatter ..

.

.

 .

.

.

.

  .     .

#.

.

.

.

.

  .

  .

 .

 '#(#.

. * & #.

.

.

 '# .

.

  .

.

 .

 .

 .

c.

.

 G .

.

.

 .

.

  .

 .

.

   9    ( .

.

.

 .

.

  .

.

 .

  #.

.

 '#.

 .

  # G .

 .

.

 .

  .

.

.

 .

. .

 0 .

#.

.

  .

 .

  .

 .

èoanClass .

 .

  .

& .  K.

.

   .

# .

% .

.

B.

.

.

 '#K.    .

.

.

.

 .

 .

#c .

#.

 .

3  .

.

.

.

 .

  .

.

*   .

A .

)ë .

.

#.

 .

  c .

 .

* .

   # .

#.

    .

.

  Widget1   .

   #.

.

.

.

.

.

.

.

 .

.

 A  .     .

 .

    .

#.

 .

.

 Widget        .

.

.

   è $    (  .

  .

.

.

.

  .

Widget( .

Widget.

.

  3.

.

.

     .

.

.

.

.

 .

.

.

.

 .

.

.

.

  .

.

   .

   &  .

 '.

.

.

.

Widget      .

.

 .

.

  .

.

 .

.

.

 .

 .

.

.

 .

.

.

.

 .

 .

 Widget2 .

  .

 .

.

.

   .

.

.

 .

 .

  .

  .

 .

.

    .

.

.

.

.

            .  .

 . .

Widget.

 .

    .

 .

 .

.

 .

  .

  .

#.

 PercentDone.

 .

.

 .

 .

.

   3 .

Widget  .

 .

 .

   .

.

.

c.

#.

PercentDone 3 .

.

      .

     .

  .

 .

.

.

   .

   p !   .

# .

.

   9 .

   .

.

     Form1 "p ! .

.

  .

 .

.

Form1 )p .3   .

 .

   .

 .

 .

 .

.

 0.

 & .

 ! .

 Button1 Text ( @ A Button2 Text 1 .

  èabel (Name)Text &.

.

. .

L +p c .

 .

. .

# .

.

.

   .

  .

  .

.

vb .    Widget.

 .

.

 .

 $   !p 2.

 #.

c  .

   .

#.

.

 .

Widget0 .

#.

.

 .

#.

 .

.

.

.

  .

 ## '  .

.

.

#.

.

.

.

#.

PercentDone.

 Widget4 .

_ ByRef Cancel AsBoolean) 1 . Ô blicEventÔercentDone(ByVal Ôercent AsSingle.

.

.

  .

.

 .

#.

PercentDone.

  .

Percent .

.

.

  .

.

.

 .

.

 .

' c  .

Cancel .

.

.

.

.

.

.

A.

   .

 .

 3.

 # .

.

#.

   .    .

 .

.

#.

  .

.

.

.

  .

 .

'.

    .

 .

  .

 .

    .

.

.

*.

 .

4 .

#.

  .

.

.

.

  .

   .

.

.

# # .

.

#.

  c.

#.

PercentDone .

.

 3èongTask.

 .

WidgetèongTask.

    .

 4.

.

.

.

  .

.

.

 3     .

 .

#.

.

    .

.

.

èongTask .

.

.

  # .

.

#.

PercentDone .

.

 .

 .

 ë p &    .

.

 .

A .

 .

 .

 .

.

     .

 .

 .

 .

 .

 .

.

  .

.

 .

 .

 .

 .

DateAndTime "p ! .    ClassWidget ImportsMicrosoft.Vis alBasic.

.

.

  .

.

 .

_ ByValMinim mIntervalAsSingle) Dim Threshold AsSingle Dim Start AsSingle DimblnCancelAsBoolean ' The Timer property of the DateAndTime object ret rns the seconds ' and milliseconds that have passed since midnight. Start = CSng(Timer) Threshold = Minim mInterval DoWhileCSng(Timer) l (Start + D ration) ' In a real application. some nit of work wo ld ' be done here each time thro gh the loop. IfCSng(Timer) > (Start + Threshold) Then RaiseEventÔercentDone( _ Threshold / D ration. IfblnCancelThenExitS b Threshold = Threshold + Minim mInterval EndIf .Widget4 Ô blicS bLongTask(ByVal D ration AsSingle. blnCancel) ' Check to see if the operation was canceled.

Loop EndS b 1     3èongTask .

Widget #.

.

#.

PercentDone #.

.

     .

.

 .

MinimumInterval1  .

#.

#.

.

.

#.

 èongTask  .

  .

.

.

 .

A.

.

  .

Cancel c .

.

    .

.

      .

&    .

.

 .

 .

èongTask .

  .

.

.

   .

.

 .

   .

 .

 .

 .

c    .

  .#   .

 .

.

.

   .

.

 .

  .

.

.

      .

     .

  .

.

.

.

.

.

   .

 .

.

 .

    .

 .

.

 .

 @ 3 .

.

'.

.

.

 .

 .

.

.

.

.

 . .

A .

.

#.

#.

.

. .

.

 .

      .

.

 .

 '.

G    .

.

  .

   .

 .

.

 .

.

 .

 '.

2     .

 .

 .

.

.

 .

.

   .

.

 .

 3  .

#  .

.

  .

.

 " !' .

 .

Widget.

.

 # .

#.

 .

.

    .

 .

.

    . A   .

*  $ c        .

.

#.

  .

.

#.

 PercentDone   .

A .

). .

.

  È .

.

.

 .

 .

  .

 .

 .

      .

#.

 c .

  .

.

 A        .

 .

  .

   # .

#.

 c  .

 .

    .

.

          .

#.

  .

.

  . .

Widget.

.

.

    .

.

  .

.

#.

   .

        3      .

#.

 1 .

.

.

.

  .

.

.

.

       .

*.

* .

  .

.

 .

 ë $   !p 1.

.

  .

.

.

Form14 ÔrivateWithEventsmWidgetAs Widget ÔrivatemblnCancelAsBoolean . #.

$ c .

.

.

 .

# .

mWidget      .

#.

 .

 .

&.

.

.

.

 .

.

.

    .

   .

.

 .

 .

.

 .

 .

 .

.

# . .

mWidget .

.

 .

Form1 .

 # .

$ c .

.

 .

.

 #.

.

  .

c .

.

 .

.

.

.

.

.

.

.

  .

 .

.

 (.

# .

mblnCancel  .

 .

 3èongTask c .

.

  .

  .

.

   @    .

  # .

 $ c .

   .

.

# .

 .

.

.

  .

.

.

.

.

c .

  .

 .

1  .

.

 mWidget .

.

  .

#.

 .

 .

Widget.

 .

.

.

.

.

'! .

.

   .

#.

 .

 .

 .

  .

 .

.

.

#.

 .

 .

.

 .

 .

mWidget  .

.

  (.

    .

 .

 .

.

#.

   # .

$ c .

   .

.

# .

   .

 .

  .

.

  p (.

.

 .

mWidget.

 .

.

.

.

.

c .

   "p (.

.

 .

.

.

#.

PercentDone.

 .

.

.

.

.

'cc .

   .

.

  .

 .

.

.

#.

mWidget_PercentDone   cc .

  .

..

  .

.

   .

   .

#    .

.

.

#.

 c .

.

 .

 .

   .

   .

.

.

    .

.

.

#.

 .

.

  )p ! .

.

.

  .

.

   .

.

#.

Text = CInt(100 * Ôercent) &"%" My. _ ByRef Cancel AsBoolean _ ) HandlesmWidget.Application.ÔercentDone lblÔercentDone.DoEvents() IfmblnCancelThen Cancel = Tr e EndS b (.  mWidget_PercentDone4 ÔrivateS bmWidget_ÔercentDone( _ ByVal Ôercent AsSingle.

 .

.

 .

 #.

.

#.

PercentDone.

 .

 .

.

.

#.

 .

 .

  .

.

 .

.

   èc 3ëc .

.

##.

  .

.

 3 .

    .

'.

.

.

  +p ! . .

.

.

  .

.

 .

   .

.

#.

EventArgs _ ) Handles B tton2.  Button2_Click4 ÔrivateS b B tton2_Click( _ ByVal sender AsObject.Click mblnCancel = Tr e EndS b (. _ ByVal e AsSystem.

  '.

.

.

 .   .

.

.

.

 èongTask .

.

.

.

.

#.

 Button2_Click       ëc .

.

.

 .

 .

 .

 .

 .

.

#.

# .  .

mblnCancel.

 #.

.

 .

 .

.

.

.

 A.

.

.

#.

 mWidget_PercentDone  .

.

.

.

.

.

  .

Bye Cancel A.

 . .

.

$ c      Form1.

'        .

#.

 .

 .

Widget( .

    .

Widget.

  .

 1 .

  # .

$ c .

.

.

 .

  .

   . .

 # .3 .

$ c .

 .

 # .

.

.

@.

 .

 .

  .

     .

.

.

3 .

 # .

$ c  .

 .

.

  # .

.

'.

  p (.

.

 .

c .

..

 .

.

.

.

.

c .

   "p (.

.

 .

.

.

#.

èoad.

 .

.

.

.

.

'cc .

   .

.

  .

 .

.

.

#.

Form1_èoad .

)p ! .

.

.

  .

.

 .

 .

 .

.

.

#.

Form1_èoad .

 .

 .

 .

_ ByVal e AsSystem.Load mWidget = New Widget EndS b 1  .Widget4 ÔrivateS b Form1_Load( _ ByVal sender AsSystem.Object.EventArgs _ ) HandlesMyBase.

.

.

.

.

    .

 .

Widget .

  .

#.

    .

 .

 .

.

#.

   mWidget.

.

.

.

  .

.

.

 .

 .

 .

.

.

 .

Widget #.

.

.

#.

PercentDone .

.

.

 .

 .

 .

.

.

#.

 mWidget_PercentDone .

.

 !p ! .4 èA.

.

.

  .

.

   .

.

#.

Refresh() mWidget. _ ByVal e AsSystem.LongTask(12.2.Text = "0%" lblÔercentDone.  Button1_Click4 ÔrivateS b B tton1_Click( _ ByVal sender AsObject.Click mblnCancel = False lblÔercentDone. 0.EventArgs _ ) Handles B tton1.33) IfNotmblnCancelThenlblÔercentDone.Text = CStr(100) &"%" EndS b ! .

.

   3èongTask.

.

.

 .

 .

 .

.

 .

.

.

  .

 .

  .

 #.

.

 .

.

 .

.

 3.

.

.

.

.

.

  èongTask .

     .

 .

.

 "" .

  (.

 #.

.

#.

PercentDone  #.

.

.

 .

 1#.

.

 .

 #.

.

#.

 .

.

.

.

 .

 .

.

 .

#.

mWidget_PercentDone 1 .

 èongTask .

  .

mblnCancel #.

 èongTask' .

     .

'.

.

 .

mblnCancel.

.

.

 A.

c .

.

 .

 .

 .

.

  .

  .

   .

.

.

 p & .

 .

/-  .

.

 .

.

 .

.

.

  "p Ô.

.

   .

 .

1#.

.

 .

 #.

.

#.

PercentDone .

 .

.

 .

 .

.

.

 .

.

 .

' .

 .

)p Ô.

.

 . .

 .

.

.

 .

0 .

#.

.

 .

.

  . .

   .

 .

.

  .

'.

.

3c.

#.

 . . .

.

.

.

  ' .

   #!  !ëc .

.

 .

 .

.

.

#.

   c 3#!  !ëc   .

 .

#.

 .

* .

.

.

    .

.

.

 '.

.

  & .

.

.

.

.

 .

.

'.

 #.

.

.

.

 . .

&  .

 .

.

    .

 .

 .

.

 .

#.

 .

.

 .

  .

 .

.  .

& .

.

     #.

^    #     &.

.

 .

 .

  #.

.

 .

    /  .

 .

.

  .

 .

&.

.

#.

   .

.

 .

.

 .

 .

èongTask.

#.

#.

.

  Form1 .

#.

.

.

#.

 .

 .

 #.

.

#.

PercentDone MN3 .

.

   .

.

.

##.

.

.

  .

Form1 .

   3 èongTask.

 .

#Oc .

.

 .

       .

  .

.

  .

   èongTask#.

.

 .

 # .

.

#.

 &.

.

'.

.

# .

mWidget  .

 .

#.

 .

 .

Widget       .

.

.

 .

#Widget mWidget.

'.

'.

.

'.

.

.

 .

Button1_Click .

.

.

#.

.

'.

.

.

  .

  .

.

 .

$      !p ! .

.

 .

.

  .

.

 .

 .

Button1_Click .

 .

.

 .

 .

 .

.

0.33)4 mWidget = New Widget ' Create a new Widget object. c  .èongTask(12.2. mWidget.

  .

  .

#Widget#.

.

 .

'.

.

.

 @      .

 3èongTask .

.

 .

.

.

.

Widget .

.

 .

3 .

 . # .

$ c .

.

 .

.

   .

.

.

.

#.

.

 .

     .

WidgetmWidget .

#.

 .

.

Widget .

   .

    ( mWidget.

. # .

.

.

.

 .

.

  .

.

.

.

Widget 3 .

 .

 .

  (.

.

   .

#.

 .

.

#  .

 Widget.

   *.

   .

  .

.

.

.

.

.

 .

#.

 .

.

   &.

.

.

    # .

$ c .

 .

  .

.

  .

  .

 .

   .

.

 # .

$ c  p .

p p .

A .

).

.

  .

  .

'  .  .

.

.

 .

  .

  .

  .

.

  3  .

#.

 .

.

   .

.

.

 .

.

   .

    .

 c .

 .

* .

  .

 .

.

   .

   .    .

    .

 .

. .

 .

#.

.

.

.

 .

 .

  .

! .

.

.

.

 # .

.

   .

.

 # &       .

.

 .

 .

.

#.

.

 ' .

 .

.

 .

*. .

.

  & .

.

      #.

   .

   ^  .

'  .

  .

' p !   .

# .

!   9 .

   "p ! .

.

   .

# .

'.

.

.

.

.

.

 .

. .

#  )p !  .

 .

   .

Module1.vb'.

.

.

! .

.

.

 .

  .

# +p .

   .

 .

   .

TestInterace.

 .

Module1G .

.

  Interace TestInterace.

 .

    .

c .

 .

 c?@B!Bcc .

      .

 .

.

 #.

  .

'  .

     c  .

'     .

.

  -p .

   .

  3 .

#.

  .

G .

 .

.

 .

.

  .

 .

    .

  .

' c  .

' 4 ÔropertyÔrop1() AsInteger S bMethod1(ByVal X AsInteger) EventEvent1()     &.

.

  .

  *  .

    .

  .

 .

.

.

.

.

.

  *   .

    .

  .

 .

c .

.

 .

.

.

'.

'.

.

  .

.

  .

.

 .

.

 .

 .

.

  .

  .

  .

' p ! .

.

  .

.

  ImplementationClassG .

 .

.

 .

.

    Module1.

3 .

   cnd Interace.

 .

.

    cnd Module    .

 .

c?@B!B4  .

ClassImplementationClass (.

  .

 .

.

 .

.

  .

 .

c .

         cndClass .

 .

.

 .

  c?@B!B "p ! .

.

 .

.

     ImplementationClass.

   .

  .

.

 .

.

 .

4 ImplementsTestInterface 1  .

 .

  .

 .

  .

.

.

 .

 .

 .

 .

 .

.

         .

 .

.

   .

.

  .

 (.

  .

 .

.

 .

.

  .

 .

c .

   .

.

   .

  .

 .

 .

.

  TestInterace .

  c?@B!B .

.

.

   .

  .

.

 )p ( .

  .

 .

.

 .

.

  .

 .

.

 .

.

    .

  .

 .

MyInterace! .

.

.

  .

.

 ImplementationClass  .

.

Ôrop1 Get EndGet Set(ByVal val e AsInteger) EndSet EndÔroperty .Event1 Ô blicS bMethod1(ByVal X AsInteger) Implements TestInterface.  cvent1Method1Prop14 EventEvent1() Implements TestInterface.           .Method1 EndS b Ô blicÔropertyÔrop1() AsIntegerImplements TestInterface.

 .

 .

 .

 .

.

 .

 .

 .

.

  +p &   .

  .

Prop1 .

.

   # .

.

 .

.

#  .

 .

ÔrivatepvalAsInteger .4 ' Holds the val e of the property.

#.

#.

# .

pval.

.

.

.

  .

.

.

.

 .

 Ret rnpval .

c .

.

# .

pval.

.

.

  .

.

 .

.

 .

 pval = val e -p &   .

  .

Method1 .

.

.

  .

.

4 MsgBox("The X parameter for Method1 is "& X) RaiseEventEvent1() .

.

.

     .

' p Ô .

  .

  .

  .

<  =.

.

  .

 .

 .

.

.

 c.

.

 '.

.

  c.

      .

.

   .

 .

  .

 .

.

.

 .

  .

  .

.

  Form1 "p ! .

.

.

 .

.

 testInstance .

Form14 DimWithEventstestInstanceAsTestInterface !.

  testInstance $ c  .

Form1.

.

     .

#.

  )p ! .

.

.

 .

.

   .

.

#.

  .

Form1     .

#.

  .

.

.

  testInstance4 S bEventHandler() Handles testInstance.") EndS b +p ! .Event1 MsgBox("The event handler ca ght the event.

.

    .

  Test .

Form1    .

.

  .

.

Ôrop1 = 9 ' Read the property. testInstance. Dim T AsNewImplementationClass ' Assign the class instance to the interface. MsgBox("Ôrop1 was set to "& testInstance.  4 S bTest() ' Create an instance of the class. ' Calls to the interface members are ' exec ted thro gh the class instance.Ôrop1) ' Test the method and raise an event.Method1(5) EndS b . testInstance. testInstance = T ' Set a property.

c .

 .

Test .

   .

 .

.

 .

.

MyInterace   .

   testInstance.

 .

  .

.

.

  3 #3 .

  .

 -p ! .

.

     .

 .

Test.

.

.

 .

 .

Form1 èoad.

   .

Object.Load Test() ' Test the class. _ ByVal e AsSystem. 4 ÔrivateS b Form1_Load(ByVal sender AsSystem. EndS b Fp c.EventArgs) _ HandlesMyBase.

.

.

 .

 .

Test .

  /-! .

.

.

 .

.

>&   .

'.

   I>@  '.

.

!.

  .

.

.

 .

.

>c  .

 K.

.

' .

->! '.

.

!.

  .

.

.

 .

.

>c   .

.

#.

 ' .

.

.

 .

#.

> p .