Training
Certifications
Books
Special Offers
Community




 
MCAD/MCSD Self-Paced Training Kit: Developing Windows®-Based Applications with Microsoft® Visual Basic® .NET and Microsoft Visual C#® .NET, Second Ed
Author Matthew A. Stoecker with Microsoft Corporation
Pages 624
Disk 1 Companion CD(s); 1 DVD(s)
Level Beg/Int
Published 05/14/2003
ISBN 9780735619265
Price $69.99
To see this book's discounted price, select a reseller below.
 

More Information

About the Book
Table of Contents
Sample Chapter
Index
Related Series
Related Books
About the Author

Support: Book & CD

Rate this book
Barnes Noble Amazon Quantum Books

 

Index


Symbol
: (colon), implementing interfaces, 185-187

A
abstract classes
   creating, 199
   declaring, 201
   inheritance, 200-201
   members, 199-201
abstract keyword, 199-201
abstract members, creating, 199-200
abstraction, object-oriented programming, 172-174
AcceptRejectRule, 314
access
   access keys, menu access, 80-81
   access levels, 27-29
      constants, 121
      protected members, 197-199
   ADO.NET data
      binding data, 323-331
      connecting to databases, 281-284
      data architecture, 271-274
      data commands, 284-290
      DataAdapters, 297-305
      DataReaders, 290-297
      DataSet objects, 306-322
      exercises, 345-356
      filtering data, 331-336
      sorting data, 331-336
      XML, 337-344
   base class members
      hidden, 196-197
      shadowed, 196-197
   code, 484-490
      caspol.exe, 492-494
      declarative security, 489-490
      groups, 492
      imperative security, 478, 481-483, 486-490
      permissions, 484-485
      security policy levels, 491-494
   COM type libraries, 417-419
   modifiers, 27-30
   .NET type libraries, 417-419
   shared members, 31-32
   Web services, 419-424
   Windows API, 424-425
   XML data stores, 354-356
accessibility
   Certified for Windows Program requirements, 428-429
   design, 427-428
   Windows Forms control properties, 429-430
AccessibilityObject property, 429-430
AccessibleDefaultActionDescription property, 429-430
AccessibleDescription property, 429-430
AccessibleName property, 429-430
AccessibleRole property, 429-430
Activate method, 56-57
Activated event, 61
ActiveX controls, instantiating, 419
Add Dialog dialog box, 524-525
Add method
   adding controls to control collections, 71-72
   ArrayList class, 128-129
Add New Item command (File menu), 470
Add New Item menu commands, Application Configuration File, 470
Add Reference dialog box, 13, 417-418
Add Special Folder menu (File System Editor), 518
Add Web Reference window, 419-420
-addgroup flag, 493
AddHandler keyword, 147-150
AddRemoveProgramsIcon property, 515
administrative installation
   distributing setup projects via network shares, 512-513
   User Interface Editor, 524
ADO.NET, 270-358
   binding data, 323-331
      creating simple-bound controls, 325-326
      data consumers, 324
      data currency, 328-330
      data providers, 323-324
      run time data binding, 326-328
   connecting to databases, 281-284
   data architecture, 271-274
   data commands, 284-290
   DataAdapters
      configuring, 297-300
      creating, 297-300
      retrieving data, 300-305
   DataReaders, 290-297
      accessing columns of data, 292-293
      applying multiple result sets, 294-295
      creating, 290-291
      executing ad hoc SQL queries, 295-297
      retrieving typed data, 293-294
      simple data access, 291-292
   DataSet objects
      constraints, 312-315
      creating without DataAdapters, 306-310
      DataRelations objects, 311-312
      editing data, 315-321
      updating data, 315-321
   disconnected database access, 270-271
   filtering data
      creating DataViews, 331-332
      DataSets, 333-334
      DataViewManager class, 335-336
      editing data with DataViews, 334-335
   sorting data
      creating DataViews, 331-332
      DataSets, 333-334
      DataViewManager class, 335-336
      editing data with DataViews, 334-335
   SQL (Structured Query Language), 275-280
      DELETE statement, 278
      INSERT INTO statement, 279
      SELECT statement, 275-278
      UPDATE statement, 278-279
   XML, 337-344
      DataSets, 338-340
      retrieving from SQL Server 2000 database, 337-338
      XmlDataDocument class, 340-343
Advanced Data Binding dialog box, 326
aesthetics, user interface composition, 45-46
aliases, creating, 13
All code code group, 492
Alpha parameter (Color structure), 365
Alt property (KeyEventArgs class), 89
Anchor property, 68-70
anchoring controls, 68-71
Application Configuration File command (Add New Item menu), 470
Application Directory code group, 492
Application Domain policy level, 491
ApplicationException class, 253
applications
   accessibility
      Certified for Windows program requirements, 428-429
      design, 427-428
      Windows Forms control properties, 429-430
   adding forms at run time, 49
   compiling, 4-5
   controls
      adding, 65
      setting tab order, 66
   debugging, 217-267
      Break mode, 220-223
      breakpoint properties, 225-226
      Debug classes, 231-240
      debugging windows, 226-229
      errors, 218-220
      exceptions, 246-255
      exercises, 256-259
      setting breakpoints, 223-225
      Trace classes, 231-240
      unit test plans, 241-245
   deployment. See deployment
   enabling printing, 410
   executing, 4-5
   help, 431-432
   optimization, 475-477
   security, 497-499
   testing, 217-267
      Break mode, 220-223
      breakpoint properties, 225-226
      Debug classes, 231-240
      debugging windows, 226-229
      errors, 218-220
      exceptions, 246-255
      exercises, 256-259
      setting breakpoints, 223-225
      Trace classes, 231-240
      unit test plans, 241-245
AppSettingReader class, 473-474
arguments, events, 59-60
Arguments property, 522, 526
ArrayList class, 128-129
arrays, 124-127
   declaring, 124-126
   For Each statement, 131-133
   initializing, 124-126
   jagged, 127
   multidimensional, 126-127
   rectangular, 126-127
   upper bound, 124
assemblies, 3-4, 456-458
   adding to setup projects, 519
   assembly manifest, 3-4, 456-457
   class library, 458
   installing to Global Assembly Cache, 467, 519
   loading, 463-464
   modules, 4
   native assembly images, 529-530
   private, 465-466
   resources, 458-461
      creating, 461
      embedding, 461
      retrieving at run time, 462-464
      retrieving from satellite assemblies, 463-464
      satellite, 462-464
   security policies, verifying, 529-530
   shared, 465-467
   strong names, 466-467
Assembly object, 463-464
AssemblyTitle attribute, 458
Assert method (CodeAccessPermission class), 232, 486
assignment operator, assigning values, 9, 54
AssociatedIndex value (HelpNavigator property), 433
associations (file), creating, 521-523
asynchronous calls, Web service methods, 421, 424
attributes
   AssemblyTitle, 458
   DllImportAttribute, 424-425
audiences (target), designing user interfaces, 42-45
Author property, 515
authoring controls, 374-384
   adding members to controls, 376-377
   inheritance, 375-376
automatic memory management. See garbage collection
Autos window, 227
AutoScroll property, 67

B
BackColor property (user controls), 381
backgrounds (forms), changing color, 53-54
base class library (.Net Framework), 2, 6-14. See also class libraries; classes; namespaces
   hiding base class members, 194-196
      access, 196-197
      compatibility, 195-196
   namespaces, 6-7
   overriding base class members, 192-194
   shadowing base class members, 194-197
   types. See types
base keyword, 196
Beep method, 95
Begin method, 421-422
BeginTransaction method, 318
binding data, 323-331
   creating simple-bound controls, 325-326
   data consumers, 324
   data currency, 328-330
   data providers, 323-324
   run time data binding, 326-328
BindingContext objects, 324, 328
BitArray class, 131
Bitmap objects, 362
BlinkRate property, 97
BlinkStyle property, 97
Blue parameter (Color structure), 365
BooleanSwitch, 264-265
Bootstrapper option, 509-510
boxing, 117
Break mode, 220-223
   Code window pop-up menu, 222
   Debug menu items, 221
   Step Into, 222
Breakpoint Condition window, 225
Breakpoint Hit Count window, 226
breakpoints, 223-225
   Breakpoints window, 224-225
   clearing, 225
   conditions, 225-226
   disabling, 225
   function breakpoints, 224
   properties, 225-226
Breakpoints window, 224-225
brushes (GDI+), 366
Build properties, configuring for setup projects (Windows Installer), 507-511
   Authenticode Signature, 511
   Bootstrapper option, 509-510
   CAB Size property, 509
   Compression property, 510
   Output File Name option, 508
   Package Files option, 508-509
Build Property Page, 477
Button property (MouseEventArgs object), 75
ByRef keyword, 23
Byte parameter, 23
ByVal keyword, 23

C
CAB files, 509
CAB Size property, 509
Cabinet files (CAB), 509
calling
   functions, 8
   methods, 21, 421, 424
Cancel property (PrintPageEventArgs object), 403
CanFocus property, 92
caspol.exe, 492-494
CausesValidation property, 92-93
CenterParent setting (FormStartPosition property), 52
CenterScreen setting (FormStartPosition property), 52
Certified for Windows program, accessibility requirements, 428-429
Char data type, 91
character encodings, converting, 441-443
characters, validating, 91
check marks (menus), displaying, 83
Checked property, 83
circular references, 34-35
Class keyword (Visual Basic .NET), 16
class keyword (Visual C#), 16
class libraries. See also base class library
   assemblies, creating, 458
   external, referencing, 13
classes, 4, 8. See also forms; namespaces
   Abstract, 200-201
   abstract
      creating, 199
      members, 199-201
   adding methods to, 20-21
   aliases, creating, 13
   ApplicationException class, 253
   AppSettingReader, 473-474
   ArrayList, 128-129
   CodeAccessPermission permission, 485-486
   collections, 131, 209-214
   compared to structures, 19
   CompoundFraction (Lab 4), 203-208
   creating, 16, 36-37, 164-169, 260-261
   CultureInfo, 435-436, 439
   Debug, 231-240
   DefaultTraceListener, 234
   delegates, 148
   Demo, 36-37
   Encoding, 441
   Fraction (Lab 3-2), creating, 164-169
   garbage collection, 36-38
   Help, 431-432
   inheritance
      creating CompoundFraction class (Lab 4), 203-208
      inherited classes, 191
      polymorphic behavior, 190
      uninherited classes, 192
   instantiating, 172-173
   KeyEventArgs, properties, 89-90
   members, 15-17
   nested, 17
   OleDbCommand, 290
   OleDbRowUpdatedEventArgs, 320
   PaintEventArgs, 382
   polymorphism, 174-176
   relationship to objects, 172-173
   ResourceManager, 462-464
   SqlCommand (Command object), 290, 337-338
   SqlRowUpdatedEventArgs, 320
   String, 118-119
   System.ApplicationException, 253
   SystemBrushes, 367
   System.Collections.CollectionBase, 142
   SystemColors, 367
   System.IO.StreamReader, 309
   SystemPens, 367
   System.String, 309
   System.Windows.Forms.Form, 55
   TextWriterTraceListener, 234
   ToolboxBitmapAttribute, 386-387
   Trace, 231-240
   TraceSwitch, 237-238
   type access modifiers, 29
   Web services. See Web services
   XmlDataDocument, 340-343
   XmlReader, 337-338
classid (Windows Forms controls), 390
clauses (handles), 147-150
clearing breakpoints, 225
Click event, 74, 81, 85
Click event handler, 81
Clicks property (MouseEventArgs object), 75
CloneMenu method, 84
cloning menus, 84
Close method, 57
Closed event, 62
Closing event, 62
closing forms, 57
CLR (common language runtime)
   compiling .NET applications, 4-5
   cross-language compatibility, 2-3
   executing .NET applications, 4-5
   garbage collection, 8
   JIT, 5
CLS (Common Language Specification), 3
code. See also common language runtime
   adding forms to projects, 49
   assembly manifest, 3-4, 456-457
   configuring access security, 484-490
      caspol.exe, 492-494
      code groups, 492
      declarative code access, 489-490
      imperative code access, 478, 481-483, 486-490
      permissions, 484-485
      policy levels, 491-494
   conversions to IL, 4
   creating inherited forms, 50
   optimization, 475-477
Code window pop-up menu, 222
CodeAccessPermission class
   members, 485-486
   methods, 486
CollectionBase class, 131
collections, 128-131
   ArrayList class, 128-129
   classes, 131
      creating strongly typed collection classes (Lab 4), 209-214
   controls, 71-72
      adding controls, 71
      removing controls, 71
   Count property, 131
   For Each statement, 131-133
   indexers, 129
   Item property, 129
   properties, 140-142
      strong type, 142
   removing items, 130-131
colon (:), implementing interfaces, 185-187
color
   backgrounds, 53-54
   printing, 409-410
   user interface composition, 46
Color structure (System.Drawing namespace), 365
Color structure, GDI+, 365-367
COM type libraries, accessing, 417-419
ComboBox controls, 331
Command object, ADO.NET
   data architecture, 273
   DataReader commands, 290-297
   methods, 286
Command property, 521
Command window, 228-229
commands
   Add New Item menu, Application Configuration File, 470
   File menu, Add New Item, 470
   menus, disabling, 82-83
   MS-DOS XCOPY, 502-503
   View menu, Tab Order, 66
CommandType property, Command object, 285-286
comma-separated values. See CSV
common language runtime, 2. See also code
   compiling .NET applications, 4-5
   cross-language compatibility, 2-3
   executing .NET applications, 4-5
   garbage collection, 8
   JIT, 5
Common Language Specification (CLS), 3
common type sytem (CTS), 2
communication, DataAdapter database options, 299
compatibility, shadowed/hidden members, 195-196
compiler optimizations, 476-477
compilers, JIT (Just-In-Time compiler), 5
compiling .NET applications, common language runtime, 4-5
complex data binding, 324, 331
complex shapes, GraphicsPath object, 370-372
components, 64-77
   compared to controls, 64
   ContextMenu, creating context menus, 82
   cross-language compatibility, 2-3
   default properties, 139-140
   DoughnutMachine (Lab 3-1)
      adding to user interface, 159-163
      creating, 152-159
   ErrorProvider, 87, 96-97, 104-106
   extender provider, 76-77
      accessing property values, 76
      setting property values, 77
      ToolTipProvider, 76
   HelpProvider, 432-433
   MainMenu, creating menus at design time, 78-80, 103-104
   PrintDocument, 402-405
   registering at installation, 516-517
composite controls. See user controls
composition, user interfaces, 44-47
   aesthetics, 45
   color, 46
   consistency, 45
   control position, 45
   fonts, 46
   icons, 46-47
   images, 46-47
   shapes, 47
   simplicity, 44-45
   transparency, 47
CompoundFraction class (Lab 4), creating, 203-208
Compression property, 510
Condition property, 526, 528
conditions, breakpoints, 225-226
.config file schema, 470-471
configurations
   adding configuration files, 495-497
   adding data to configuration files, 475
   application security (Lab 9), exercise, 495-497
   Build properties for setup projects (Windows Installer), 507-511
      Authenticode Signature, 511
      Bootstrapper option, 509-510
      CAB Size property, 509
      Compression property, 510
      Output File Name option, 508
      Package Files option, 508-509
   code access security, 484-490
      caspol.exe, 492-494
      code groups, 492
      declarative code access, 489-490
      imperative code access, 478, 481-483, 486-490
      permissions, 484-485
      policy levels, 491-494
   .config file schema, 470-471
   creating configuration file, 469-471
   dynamic properties, 471-475
      deployed applications, 473
      Properties window, 472-473
      retrieving manually, 473-474
      setting manually, 473-474
   printing, 412-415
      page settings, 415
      PrintDialog dialog box, 412-413
      PrintSetupDialog dialog box, 414
   role-based authorizations, 479-483
      declarative role-based security, 483
      imperative role-based security, 481-483
      Principal object, 480-481
   setup projects, 532
      installation editors, 517-528
      properties, 515-517
   trace switches, 238-240
Connection object, ADO.NET
   connecting to databases, 281-284
   data architecture, 272
connections (ADO.NET, databases), 281-284
ConnectionString property (Connection object), 283
consistency, user interface composition, 45
Const keyword, 120
constants, 120-121
constituent controls, 379
Constraint collection (DataTable objects), 271
Constraints (ADO.NET DataSet objects), 312-315
   foreign key, 314-315
   property values, 314-315
   unique, 313
constructors, 10, 25-26
consumers (data consumers), data binding, 324
container controls, 67-68
context menus, creating, 82
ContextMenu component, creating context menus, 82
Control class, authoring controls, 374
Control property (KeyEventArgs class), 89
ControlBindingsCollection objects, 326
controls, 44, 64-77
   ActiveX, instantiating, 419
   Adding
      to applications, 65
      to Toolbox, 72-73
   anchoring, 68-71
   collections, 71-72
   compared to components, 64
   container, 67-68
   custom, 382-383
      creating exercise, 392-397
      testing exercise, 397-398
   docking, 68-71
   editing properties, 65-66
   event handlers, creating, 58-59, 73-74
   events, mouse interactions, 74-75
   Focus method, 91
   frmMain form (Virtual Doughnut Factory), 100-102
   inherited, 377-379
   .NET Framework
      authoring, 374-384
      GDI+, 360-374
   positioning, 45
   PrintPreview, 411-412
   PrintPreviewDialog, 411-412
   tab order, setting, 66
   tasks, 385-391
      adding controls to Toolbox, 385
      debugging controls, 387-388
      hosting controls in Internet Explorer, 390
      managing control licensing, 388-390
      Toolbox bitmaps, 386-387
   user, 375-376, 379-381
Control.SetStyle method, 383
converting
   character encodings, 441-443
   data types, 113-116
      explicit conversions, 115-116
      implicit conversions, 114-115
      strings, 118-119
coordinates (GDI+ Graphics object), 362-363
Copy method (IPermission interface), 479
Count property, 131
CreateDataView method, 336
CreateGraphics method, 361
Cryptographic Hash code group, 492
CSV (comma-separated values), 309
CTS (common type system), 2
CType function, converting data types, 116
CultureInfo class, 435-436, 439
CultureInfo.CurrentUICulture property, 436-437
cultures, 434-436
   formatting, 439-443
   neutral, 435
   retrieving resources from satellite assemblies, 464
   setting current cultures, 435-437
   specific cultures, 435
currency (data currency), data binding, 328-330
CurrencyManager objects, data providers, 324, 328
current cultures, setting, 435-437
custom actions
Custom Actions Editor, 525-526
custom controls, 382-383
   creating, 392-397
   OnPaint method, 382
   Paint event, 382
   testing exercise, 397-398
custom exceptions, 253-254
CustomActionData property, 526
Customize Toolbox option, 385
Customize Toolbox window, 73

D
data access (ADO.NET), 270-358
   binding data, 323-331
   connecting to databases, 281-284
   data architecture, 271-274
   data commands, 284-290
   DataAdapters, 297-305
   DataReaders, 290-297
   DataSet objects, 306-322
   disconnected database access, 270-274
   exercises, 345-356
   filtering data, 331-336
   sorting data, 331-336
   SQL (Structured Query Language), 275-280
   XML, 337-344
Data Adapter Configuration Wizard, 299-300
data architecture (ADO.NET), 271-274
   Command object, 273
   Connection object, 272
   Data Provider, 271-272
   DataAdapter object, 273-274
   DataReader object, 273
data binding, 323-331
   creating simple-bound controls, 325-326
   data consumers, 324
   data currency, 328-330
   data providers, 323-324
   run time data binding, 326-328
data commands (ADO.NET), 284-290
   creating Command objects, 285-286
   creating data commands, 285
   executing nonquery commands, 289
   executing commands, 286
   parameters, 286-289
   returning single values, 289-290
Data Form Wizard
   updating data
      connecting data forms to databases, 352-353
      creating master-detail data forms, 351-352
   viewing, 351-353
Data Provider, ADO.NET data architecture, 271-272
data stores (XML), accessing, 354-356
data types, 110-119
   boxing, 117
   Char, 91
   converting, 113-116
      explicit conversions, 115-116
      implicit conversions, 114-115
      strings, 118-119
   floating-point, 111-112
   integer, 110-111
   methods, 116-117
   non-numeric, 112-113
   numeric, converting strings to, 118-119
   string, converting to numeric, 118-119
data validation, 87-98
   characters, 91
   field-level validation, 87-91
   focus, 91-93
   form-level validation, 93-95
   user feedback, 95-97
DataAdapter objects (ADO.NET), 297-305
   configuring DataAdapters, 298-300
   creating DataAdapters, 298-300
   data architecture, 273-274
   retrieving data, 300-305, 347-349
   updating data, 300-305, 347-349
DataAdapters (ADO.NET), 304-305
DataBindings property, 325-326
DataBindings.Add method, 327
DataBindings.Remove method, 327
DataColumns collection (DataTable objects), 271
DataCommand objects (ADO.NET), 346-347
DataGrid controls, 331
DataReaders (ADO.NET), 290-297
   accessing columns of data, 292-293
   adding data access, 345-347
   applying multiple result sets, 294-295
   creating, 290-291
   data architecture, 273
   executing ad hoc SQL queries, 295-297
   retrieving typed data, 293-294
   simple data access, 291-292
DataRelations objects (DataSet), 271, 311-312
DataRows collection (DataTable objects), 271, 307
DataSet objects (ADO.NET)
   constraints
      foreign key, 314-315
      unique, 313
   creating without DataAdapters, 306-310
   data architecture, 271
   DataRelations objects, 271, 311-312
   DataTable objects, 271, 307
   editing data, 315-321
      handling update errors, 319-321
      transactions, 315-319
      updating the database, 317
   filling without DataAdapters, 306-310
   filtering data, 333-334
   retrieving data, 347-349
   sorting data, 333-334
   updating data, 347-349
   XML, 338-340
      reading XML into DataSets, 339
      writing XML from DataSets, 339-340
DataSet.ReadXml method, 339
DataSet.ReadXmlSchema method, 339
DataSet.WriteXml method, 340
DataSet.WriteXmlSchema method, 340
DataTable objects (DataSet), 271, 307
DataTable.NewRow method, 308
DataView objects, 334-335
DataViewManager class, 335-336
DataView.RowState property (DataRow objects), 334
DataViews, 331-332
DataViewSettings property, 335
DateTimeFormat member (CultureInfo class), 439
DbType property (Command object), 287
Deactivate event, 58, 61
Debug class, 231-240
   implementing tracing exercises, 264-266
   writing output to Listeners collection, 232-233
Debug menu, 221, 226-229
   additional windows, 229
   Autos window, 227
   Command window, 228-229
   Locals window, 226-227
   Output window, 226
   Watch window, 227-228
debugging applications, 217
   Break mode, 220-223
   breakpoints, 223
      Breakpoints window, 224-225
      clearing, 225
      disabling, 225
      function, 224
      properties, 225-226
   controls, 387-388
   Debug class, 231-240
      implementing tracing exercises, 264-266
      writing output to Listeners collection, 232-233
   debugging windows, 226-229
      Autos window, 227
      Command window, 228-229
      Locals window, 226-227
      Output window, 226
      Quickwatch dialog box window, 228
      Watch window, 227-228
   errors, 218-220
      logical, 220, 258-259
      run-time, 219, 257-258
      syntax, 218-219, 256-257
   exceptions, 260-263
      exception handlers, 246-250
      throwing, 251-254
   Trace class, 264-266
   unit test plans, 241-245
      bad data, 243
      boundary conditions, 243
      data combinations, 244
      designing test cases, 242-243
      normal data, 243
      testing data, 243
declarative role-based security, 483
declarative security, 478
Declare keyword, 424-425
declaring
   arrays, 124-126
   classes
      Abstract, 201
      inherited, 191
   enumerations, 121-122
   events, 146-147
   external functions, 425
   objects, 10-11
   static variables, 22
Default keyword, 139
default properties, 139-140
default values
   enumerations, 122
   user interface composition, 44
DefaultPageSettings property (PrintDocument object), 402
DefaultPageSettings.Color property, 409
DefaultTraceListener class, 234
defining interfaces, 182-184
delegates
   creating, 145
   myDelegate, 145
   System.EventHandler, 148
DELETE statement (SQL), 278
DeleteRule, foreign key constraints, 314
Delta property (MouseEventArgs object), 75
Demand method
   CodeAccessPermission class, 486
   IPermission interface, 479
   Permission object, 486
Demo class, creating, 36-37
DemoTest project, creating Demo class, 36-37
Deny method
      CodeAccessPermission class, 486
      Permission object, 486-487
deployment
   deployed applications, 472-473
   installation editors
      configuring setup projects, 517-528
      Custom Actions Editor, 525-526
      File System Editor, 517-521
      File Types Editor, 521-523
      Launch Conditions Editor, 527-528
      Registry Editor, 520-521
      User Interface Editor, 523-525
   setup projects (Windows Installer). See setup projects
   XCOPY, 502-503
Description property, 516
design
   accessibility, 427-428
   test cases, unit test plans, 242-243
   user interfaces
      composition, 44-47
      controls, 43
      forms, 43
design time, creating menus, 78-80
destructors, 25-26
DetectNewerInstall property, 516
dialog boxes
   Add Dialog, 524-525
   Add Reference, 13, 417-418
   adding, 524-525
   Advanced Data Binding, 326
   New Breakpoint, 226
   PrintPreviewDialog, 412
   PrintSetupDialog, 414
   QuickWatch, 227-228
   Setup Property Pages, 508
Dim statement, 9
Direction property (Command objects), 287
DirectoryServicesPermission permission, 484
disabling
   breakpoints, 225
   menu commands, 82-83
disconnected database access (ADO.NET), 270-271
displaying
   check marks (menus), 83
   errors, 96-97
   radio buttons (menus), 83
DisplayResults method, 150
Dispose() method, 34
distributing setup projects (Windows Installer), 511-514
DllImportAttribute attribute, 424-425
Dock property, 71
docking controls, 68-71
DoubleClick event, 74
DoughnutMachine component (Lab 3-1)
   adding to user interface, 159-163
   creating, 152-159
drawing shapes (GDI+ Graphics object), 363-364
DrawString method (Graphics object), 369-370
dynamic properties, configuring applications, 471-475
   deployed applications, 473
   Properties window, 472-473
   retrieving properties manually, 473-474
   setting properties manually, 473-474

E
editing
   data, DataSet objects (ADO.NET), 315-321
   properties
      controls, 65
      multiple controls, 65-66
editors, installation
   configuring setup projects, 517-528
   Custom Actions Editor, 525-526
   File System Editor, 517-521
   File Types Editor, 521-523
   Launch Conditions Editor, 527-528
   Registry Editor, 520-521
   User Interface Editor, 523-525
embedding resources in assemblies, 461
enabling printing, 410
Encoding class, 441
Encoding.Convert method, 442
End method, 423
Enter event, 92
Enterprise policy level, 491
EntryPoint property, 526
enumerations, 121-123
EnvironmentPermission permission, 484
Equals method, 116
EqualsHandler method, 258
ErrorProvider component, 87, 96-97, 104-106
errors
   debugging applications, 218-220
   displaying, 96-97
   input, user feedback, 95-97
   logical, 220, 258-259
   run-time, 218, 257-258
   syntax, 218-219, 256-257
   testing applications, 218-220
   updating data, 319-321
Errors property (RowUpdated events), 321
event handlers, 57-58
   Click, 81
   creating, 58-59, 73-74
   events with multiple handlers, 149-150
   implementing, 147-150
   multiple events, 149
   removing at run time, 150
   Visual Basic .NET, 147-148
   Visual C#, 148
EventLogPermission permission, 484
events, 15, 144
   adding to interfaces, 184
   arguments, 59-60
   Click, 74, 81, 85
   Deactivate, 58
   declaring, 146-147
   DoubleClick, 74
   EventArgs, 60
   field-level validation, 88-91
   focus, 92
   forms, 57-62
   handling, 57
   KeyDown, 89-90
   KeyPress, 90
   KeyUp, 89-90
   lifetime, 60-62
   menus, 81
   mouse interactions, 73-75
   multiple event handlers, 149-150
   multiple events, event handlers, 149
   Popup, 81
   PrintPage, 403-405
   raising, 146-147
   Select, 81
   shared, 147
   static, 147
   Validate, 74
   Validated, 92-93
   Validating, 74, 92-93
   VisibleChanged, 58
exceptions
   exception handlers, 247-250, 490
   exercises, 260-263
   InvalidCastException, 132
   throwing, 251-252
ExecuteNonQuery method (Command object), 286, 289
ExecuteReader method (Command object), 286, 290-291
ExecuteScalar method (Command object), 286, 289-290
ExecuteXmlReader method, 337-338
exercises
   ADO.NET data access
      connecting with databases, 345-353
      connecting with XML data stores, 354-356
   CompoundFraction class, creating, 203-208
   creating custom controls, 392-397
   debugging applications
      identifying logical errors, 258-259
      identifying run-time errors, 257-258
      identifying syntax errors, 256-257
   Demo Class, 36-37
   DoughnutMachine component
      adding to user interfaces, 159-163
      creating, 152-159
   exceptions
      creating MyDivideByZero class, 260-261
      handling exceptions, 261-263
      raising exceptions, 261-262
   forms, creating, 445-448
   fractions, creating, 164-169
   garbage collection, 37-38
   localized forms, 445-448
   menus, adding, 103-104
   overloaded operators, creating, 208-209
   print support, adding to applications, 451-453
   strongly typed Collection class, creating, 209-214
   testing custom controls, 397-398
   trace switches, 264-266
      adding trace functionality, 264-265
      creating .config file, 265-266
   user interfaces, 99-102
   validation handlers, 104-106
explicit conversions, data types, 115-116
ExtendedProperties collection (DataSet), 271
extender provider components, 76-77
Extensions property, 521
external functions, declaring, 425
external libraries, referencing, 13

F
Fail method, 232
fields, 15
   default values, 44
   field-level validation, 87-91
      events, 88-91
      properties, 88
File menu commands, Add New Item, 470
File searches, 527
File System Editor, 517-521
   Add Special Folder menu, 518
   adding assemblies to setup projects, 519
   adding files to setup projects, 519
   adding registry keys, 521
   adding shortcuts, 520
File Types Editor, 521-523
FileDialogPermission permission, 484
FileIOPermission permission, 484
files
   adding to setup projects using File System Editor, 519
   assembly manifest, 457
   associations, creating, 521-523
   bootstrapper, 510
   Cabinet (CAB), 509
   configuration
      adding, 495-497
      creating, 469-471
Fill method (DataAdapter object), 300-302
filling shapes, 364
filtering data, 331-336
   creating DataViews, 331-332
   DataSets, 333-334
   DataViewManager class, 335-336
   editing data with DataViews, 334-335
finalizers (Visual Basic .NET), 24-25
   Overrides keyword, 26
   Sub Finalize(), 25
Find value (HelpNavigator property), 433
FirstPagePrinted variable, 407
flags
   -addgroup, 493
   -listgroups, 493
   PermissionState.None, 485
   PermissionState.Unrestricted, 485
   SecurityAction, 490
flat files, ADO.NET DataSet objects, 309-310
floating-point types, 111-112
float-pointing values (structures), 363
Flush method, 235
focus
   events, 92
   forms, 56-57, 61
   validating user input, 91-93
Focus method, 91
fonts, user interface composition, 46
For Each statement
   arrays, 131-133
   collections, 131-133
foreign key constraints, ADO.NET DataSet objects, 314-315
formatting cultures, 439-443
   character encoding conversions, 441-443
   right-to-left display, 440-441
Form.Load event handlers, 264
Form.Show method, 56
forms, 44, 48-63. See also classes
   accessibility properties, 429-430
   adding to applications at run time, 49
   adding to projects, 48-49
   background color, changing, 53-54
   closing, 57
   controls. See controls
   events, 57-62
      arguments, 59-60
      creating event handlers, 58-59
      lifetime, 60-62
   focus, 56-57, 61
   frmMain (Virtual Doughnut Factory), 100-102
   inherited
      creating with code, 50
      creating with Inheritance Picker, 49-50
   localized
      creating, 437-439
      print support (Lab 8), 445-453
   methods, 55-57
   properties
      appearance, 53-54
      assigning values, 54
      BackColor, 54
      BackGroundImage, 54
      Cursor, 54
      Font, 54
      ForeColor, 54
      Opacity, 54-55
      Text, 54
   start-up, 50-52
      locations, 52-53
      Visual Basic .NET, 51-52
      Visual C#, 52
   translucent, 55
   transparent, 55
   visibility, 56-57
FormStartPosition property, 52
For...Next loop, 132-133
Fraction class, creating (Lab 3-2), 164-169
Friend keyword, 121
Friend members, 197-199
frmMain form (Virtual Doughnut Factory)
   controls, 100-102
   properties, 100-102
fully-qualified names, 12
functionality, adding to inherited controls, 377-378
functions, 20. See also methods
   calling, 8
   CType, converting data types, 116
   external, declaring, 425
   syntax, converting data types, 116
   Windows API, accessing, 424-425

G
garbage collection, 8, 33-35
   circular references, 34-35
   classes, 36-38
GDI+ (Graphical Device Interface), 360-374
   brushes, 366
   Color structure, 365-367
   Graphics object, 361-364
      coordinates, 362-363
      drawing shapes, 363-364
   pens, 366-367
   rendering
      complex shapes, 370-372
      simple shapes, 368-369
      text, 369-370
   SystemColors class, 367
   System.Drawing namespace, 360-361
Get methods (DataReaders), 293-294
GetChars method, 443
GetChildRows method, 312
GetFocus event, 92
GetHashCode method, 116
GetLicense method, 388-390
GetParentRow method, 312
getter methods, 134
GetType method, 116, 132
Global Assembly Cache
   installing assemblies to, 467, 519
   sharing assemblies, 465-466
global variables, optimizing application performance, 475
globalization, 434-443
   cultures, 434-436
      formatting, 439-443
      retrieving resources from satellite assemblies, 464
   implementation, 436
   international input validation, 439
Graphical Device Interface. See GDI+
graphics, printing, 405-407
Graphics object (GDI+), 361-364
   coordinates, 362-363
   drawing shapes, 363-364
Graphics property (PrintPageEventArgs object), 403
Graphics.DrawString method, 369-370
Graphics.FromImage method, 362
GraphicsPath object, 370-372, 405
Green parameter (Color structure), 365
GroupBox control, 67
groups, code, 492

H
Handled property (KeyEventArgs class), 89
Handles clause, 147-150
Hashtable class, 131
HasMorePages property (PrintPageEventArgs object), 403
heap (memory), 8
help
   Help class, 431-432
   HelpProvider component, 432-433
   properties, 432-433
HelpKeyWord property, 432-433
HelpNavigator property, 432-433
HelpProvider component, 432-433
HelpString property, 432-433
Hide method, 57
hiding
   base class members, 194-197
   menu items, 83-84
High Contrast option (Certified for Windows Program requirement), 428
hosting controls in Internet Explorer, 390

I
Icon property, 97
icons, user interface composition, 46-47
identity, assemblies
   assembly manifest, 457-458
   strong names, 466-467
IL (Intermediate Language), 3
   code conversions to, 4
   compiling .NET applications, 4-5
   executing .NET applications, 4-5
IList interface, data providers, 324
images
   native assembly images, installing, 529-530
   user interface composition, 46-47
Immediate mode (Command window), 228
imperative role-based security, 478, 481-483, 486-490
Implements keyword, 185-188
implicit conversions (data types), 114-115
Imports statement, 12-13
Indent method, 233
Index value (HelpNavigator property), 433
indexers, 129, 139-140
inheritance, 190-202
   classes
      Abstract, 200-201
      Control, 376-377
      creating, 190-192, 203-208
      declaring, 191
      polymorphic behavior, 190
      UserControl, 375-376
   controls, 376-379
      adding new functionality, 377-378
      creating appearances, 378-379
      existing, 375
   members, 192-199
      hiding base class, 194-196
      overriding base class, 192-194
      shadowing base class, 194
   polymorphism, 175
Inheritance Picker, creating inherited forms, 49-50
inherited forms, creating
   with code, 50
   with Inheritance Picker, 49-50
Inherits keyword, 50
initialization
   arrays, 124-126
   value types, 11
input errors, user feedback, 95-97
INSERT INTO statement (SQL), 279
installation editors
   configuring setup projects, 517-528
   Custom Actions Editor, 525-526
   File System Editor, 517-521
   File Types Editor, 521-523
   Launch Conditions Editor, 527-528
   Registry Editor, 520-521
   User Interface Editor, 523-525
installations
   assemblies to Global Assembly Cache, 467, 519
   native assembly images, 529-530
   setup projects (Windows Installer), 512-513, 532-533
InstallerClass property, 526
instances, creating, 9-11
instantiation, 10-11
   ActiveX controls, 419
   classes, 172-173
   user-defined types, 18-19
InstMsiA.exe, 510
InstMsiW.exe, 510
integer types, 110-111
integer values (structures), 363
Interface keyword (Visual Basic .NET), 182-184
interface keyword (Visual C#), 182-184
interfaces
   implementation, 185-188
      members, 186-187
      methods, 186-187
      Visual Basic .NET, 187-188
      Visual C#, 187
   IPermission, 479
   polymorphism, 175, 182-189
Intermediate Language. See IL
internal members, 197-199
international input, validation, 439
Internet Explorer, hosting controls, 390
Intersect method, IPermission interface, 479
InvalidCastException, 132
IPermission interface, 479
IsSubsetOf method, IPermission interface, 479
Item property, 71, 129

J
jagged arrays, 127
JIT (Just-In-Time compiler), 5

K
keyboards
   access, menus, 80-81
   Certified for Windows program requirements, 429
   handlers, form-level validation, 94-95
KeyCode property (KeyEventArgs class), 89
KeyData property (KeyEventArgs class), 89
KeyDown event, 89-90
KeyEventArgs class, 89-90
KeyPress event, 90
KeyUp event, 89-90
KeyValue property (KeyEventArgs class), 89
KeywordIndex value (HelpNavigator property), 433
keywords
   abstract, 199-201
   access modifiers, 27
   AddHandler, 147-150
   aliases, 13
   base, 196
   ByRef, 23
   ByVal, 23
   Class (Visual Basic .NET), 16
   class (Visual C# .NET), 16
   Const, 120
   Declare, 424-425
   Default, 139
   Friend, 121
   Implements, 185-188
   Inherits, 50
   Interface (Visual Basic .NET), 182-184
   interface (Visual C# .NET), 182-184
   Me, 55
   MustInherit, 199, 201
   MustOverride, 200
   MyBase, 196
   New (Visual Basic .NET)
      instantiating classes, 172-173
      instantiating user-defined types, 18-19
   new (Visual C# .NET), 194
      hiding base class members, 194-195
      instantiating user-defined types, 18-19
   Noninheritable, 192
   operator, 179-181
   Optional, 25
   out, 24
   Override (Visual Basic .NET), 26, 192
   override (Visual C# .NET), 192
   Preserve, 125
   Private (Visual Basic .NET), 121, 197-199
   private (Visual C# .NET), 197-199
   Protected (Visual Basic .NET), 121, 197-199
   protected (Visual C# .NET), 197-199
   Public, 121
   ref, 23
   sealed, 192
   Static, 22
   struct, 16
   Structure, 16
   this, 55
   Value, 134
   virtual, 199
   WithEvents, 147-148
Keywords property, 516


Next



Last Updated: May 15, 2003
Top of Page