Object Browser window
accessing, 221
ReadKey() method, 222
object Deserialize() method, 727
Object Management Group (OMG) Web site, 654
Object() method, 211
object source parameter, 375
ObjectDataSource data control, 613
Object.Equals() method, 306
object-oriented programming (OOP)
custom exceptions, 365–366
discussed, 182
events, 198
inheritance, 191–193
monolithic applications, 182
.NET Framework and, 4
:: operator, 363–365
operator overloading, 197–198
polymorphism, 193–195
reference versus value types, 198
structs, 199
traditional programming techniques, 182
in Windows application exercise, 199–202
objects
accessibility, 185
ADO (ActiveX Data Objects), 772
classes and, 183–184, 188
Command, 775
CommandBuilder, 775
comparisons between, 297–302
Connection, 775
constructors, 187
copying, 234
DataAdapter, 775
DataGridView
controls, 844
database connections, 841
discussed, 840
formatting, 842–843
DataReader
overview, 775
reading data with, 779–783
DataRelation, 776, 804
DataSet
columns, rows, and tables, 786–787
Fill() method, 786
overview, 776
reading data with, 787–788
DataTable, 776
destructors, 187
Dictionary<K, V>, 343–344
disposable, 190, 983–984
ElapsedEventArgs, 370
fields and, 184–185
int type and, 186
interfaces, 189–190
lifecycle of, 187
List<T>, 335–336
methods and, 186
properties and, 184–185
reference types, 233
relationships between, 195–197
System.Object class
Equals() method, 212
GetHashCode() method, 213
GetType() method, 213
MemberwiseClone() method, 212, 234, 292
Object() method, 211
ReferenceEquals() method, 212
ToString() method, 212, 259, 297
UML (Universal Modeling Language), 183
Obsolete attribute, 892
OCI (Oracle Call Interface), 772
ODBC (Open Database Connectivity), 772
OMG (Object Management Group) Web site, 654
OnBeginPrint() method, 513
OnDownloadFile() method, 970
OnFileNew() method, 509
OnFileOpen() method, 509
OnFileSaveAs() method, 509
OnPaint() method, 982
OnPrintPage() method, 513
OOP (object-oriented programming)
custom exceptions, 365–366
discussed, 182
events, 198
inheritance, 191–193
monolithic applications, 182
.NET Framework and, 4
:: operator, 363–365
operator overloading, 197–198
polymorphism, 193–195
reference versus value types, 198
structs, 199
traditional programming techniques, 182
in Windows application exercise, 199–202
Open Database Connectivity (ODBC), 772
Open Group Web site, 654
Open() method, 704
Open property, 708
Open Software Foundation (OSF), 654
OpenFile() method, 501, 507
OpenFileDialog class, 492
OpenOrCreate property, 708
OpenRead() method, 962
OpenWrite() method, 963
operands, 43
operators
??, 329–330
::, 363–365
as, 321–322
assignment, 49, 64–65
binary, 44, 304, 306
bitwise, 60–63
comparison, 58
conditional, 44, 59
generic classes, 356–357
is, 299–302
mathematical
addition (+), 44
decrement (--), 45
division (/), 44
explicit conversion, 45
implicit conversion, 45
increment (++), 45
multiplication (*) operator, 44
remainder (%), 44
subtraction (-), 44
type conversion, 48
variable manipulation, 46–48
operator precedence, 49–50, 66
overloaded, 197–198
overloading, 302–306
relational, 58
ternary, 44, 68
typeof, 103
unary, 44, 304, 306
optional files, Simple Editor application, 570
Options dialog box, Visual Studio, 31
Oracle Call Interface (OCI), 772
Oracle databases, 777
orientation, print page setup, 520
OSF (Open Software Foundation), 654
OSI layers, networking, 953–954
out keyword, 186
out parameters, 132–133
outer variables, 379
outlining system, Visual Studio, 27
output classes, 702–703
output streams, 702
Output window, debugging, 153
overflow, explicit conversion, 93
overloaded operators, 197–198
overloading
conversion operators, 319–320
functions, 144–146
operators, 302–306
override keyword
classes, 250–251
method definitions, 239
overriding methods, 239