C++. See also Managed C++
Managed C++ built-in types and aliases for, 38
Managed C++ vs., 33
Call Stack window, 295
card class (.h) file, 276–277
Card.h file, 272
Cards.cpp file, 268–269
Cards.h file, 267
catch blocks
catching
multiple exceptions, 205–208
previously uncaught exceptions, 208–210
Managed C++ exceptions and, 195, 196
multiple, 205–208
CatchAll.exe file, 210
CatchException.exe file, 197
ChangeColor.aspx file, 748–749
ChangeColor form, 750
char, 42
character built-in value type, 49–50
character literals, 71–73
CharLiteral.exe file, 73
Chars.exe file, 50
CheckBox control, 397–401
CheckedListBox control, 438–443
methods for accessing checked status, 438–439
properties of, 438
splitting, 439–443
CheckMe.exe file, 401
clamping, 578
class constructors, 129–130. See also constructors
class libraries, 227–248
ASP.NET, 720–721
Managed C++, 266–283
adding class with wizards, 269–272
adding constructors, member methods, and properties, 274–277
adding member variable by wizard, 273–274
compiling projects, 282–283
manually adding, 277–280
placing project in empty solution, 266–268
saving templates in toolbox, 280–281
updating Class View, 281–282
updating Library Linker File, 268–269
.NET Framework library namespaces, 228–248
overview, 228–229
System::Collections, 231–232, 299
System::Data, 232–233, 608
System::Diagnostics, 234–235
System::DirectoryServices, 235–236
System::Drawing, 236–237
System::Globalization, 237–238, 906
System::IO, 238–240
System::Net, 240–241
System::Reflection, 241–242
System::Resources, 243
System::Threading, 243–244
System::Web, 244–245
System::Windows::Forms, 246–247
System::Xml, 247–248
System, 229–230
.NET Framework organizational structure, 227–228
class types, 23
Class View
about, 253–254
updating, 281–282
classes
abstract, 162–165
access for namespaces with public, 181
adding Managed C++ class with wizards, 269–272
attribute added to, 870
BinaryReader and BinaryWriter, 361–364
building
event receiver, 222–223
event source, 220–221
class constructors, 129–130
class declarations and object instantiation, 119–124
pinning pointers, 121–122
pointer to objects, 120
references to objects, 122–124
Constraint, 650
declaring managed classes, 110–119
defined, 61
derived from XmlNode, 687–688
Directory and DirectoryInfo, 337–342
disconnected ADO.NET, 645–646
Constraint, 650
DataAdaptor, 647
DataColumn, 650
DataRelation, 650
DataRelationCollection, 650
DataRow, 649
DataSet class, 647–648
DataTable, 648–649
disconnected ADO.NET core, 645–646
event receiver, 222–223
event source, 220–221
File and FileInfo, 342–346
FileStream, 352–355
FileSystemInfo, 336–337
_gc and _nogc keywords, 113–115
getting Type reference, 859–860
Graphics
accessing, 532
Dispose() method, 539
overview, 537–538
rendering methods of, 538–539
rendering outside of paint event, 540–544
hierarchy for I/O manipulation, 350
inheriting, 116–118
MainMenu, 501
Math, 230
member methods in, 126–145
member variables, 124–125
methods of Path, 339
nested, 156–160
.NET collection, 300
Object, 229
Page, 733
Page base, 733
PrintDocument, 602
private, public, and protected member access modifiers, 110–113
referencing class members of .NET Framework, 863–865
Resource Writer, 895–896
ResourceManager, 902–904
ResourceReader, 901
sealed, 118–119
serializing managed, 364–371
with BinaryFormatter, 367–369
formats for serialized data, 366–367
overview, 364
serializing and deserializing Player class, 368–369, 370–371
setting up for serialization, 364–366
with SoapFormatter, 369–371
StreamReaders and StreamWriter, 358–361
structs vs., 119
System::Attribute, 870
System::Data namespace, 232–233, 608
System::Delegate, 213
System::Diagnostics namespace, 235
System::Drawing, 529–530
System::Exception class, 197–198
System::Globalization namespace, 237–238, 906
System::IO namespace, 238–240
System::MulticastDelegate, 213
System::Net and System::Net::Sockets namespace, 241
System::Operating System, 230
System::Random, 230
System::Reflection namespace, 242
System::Resources, 243
System::Threading namespace, 244, 815–816
System::Type, 858
System::Windows::Forms namespace, 246–247
System::Xml, 248
type casting between, 160–162
user-defined copy constructors not allowed for managed, 130
using custom attributes to document, 876–879
virtual method for, 109
XmlDataDocument, 714
XmlDocument, 691–693, 694–695
XmlNode, 687–692
XmlTextReader, 665–672
XmlTextWriter, 678–683
XmlValidatingReader, 675
closing databases, 626–627
CLR (Common Language Runtime), 13–21
about, 3, 4
attributes, 17
code access verification, 16
code verification service, 16
finding using directive, 176
garbage collection, 16–17
Just-in-Time compilation, 21
managed code, 5, 15
managed data, 15
multiple language support, 4, 18–20
multiple platform support, 20
.NET multilanguage support, 4
overview of, 13–15
reflection, 17
setting culture within, 907–908
starting programs with, 2
start-up process flow, 14
versioning in private assemblies and, 885
CLS (Common Language Specification)
Managed C++ operators supported by, 140–141
rules for .NET Framework class library, 227–228
support of CTS with, 25–26
code access verification, 16
code verification service, 16
Codebehind feature. See also ASP.NET
Blank2.aspx.h file, 777–778
Color.aspx.h file, 741, 744–746
default Global.asax.h file, 726–727
Header.ascx.h file, 774–775
Lists.aspx.h file, 760–762
Managed C++ in ASP.NET, 719–720
ManyHeadings.aspx.h, 779, 780–781
suffix for user control, 773
Tables.aspx.h file, 769–771
collections, 299–333
about, 299
IEnumerable, IEnumerator, and ForEach interfaces, 301–306
.NET collection classes, 300
.NET collection interfaces, 301
specialized, 324–332
ListDictionary, 324–326
NameValueCollection, 329–332
StringCollection, 327–328
StringDictionary, 328–329
standard, 306–324
ArrayList, 307–312
BitArray, 312–315
Hashtable and SortedList, 316–321
Queue and Stack, 322–324
types found in System::Collections and System::Collections::Specialized namespaces, 231–232
Color.aspx file, 740–741
Color.aspx.h file, 741, 744–746
Colorful Web Form, 742
colors, 568–570
about, 568–569
common members of, 569
custom, 569–570
named, 570
setting Web application background, 763
Colors assembly resource file, 914
Colors.fr-fr.resx, 916
ComboBox control, 433–437
about, 433
DropDown styles of, 433
methods of, 433–434
synchronizing ComboBoxes, 434–437
comma operators, 81
command prompts in .NET development environment, 32
comments
Managed C++, 75–76
XML, 662
common dialog boxes, 523–525. See also dialog boxes
calling common ColorDialog, 523–525
list of available, 523
Common Language Runtime. See CLR
communication protocols, 784–785
comparison operators, 77–78
compiling
JIT compilation, 21
Managed C++ projects, 282–283
components of Web services, 784–786
communication protocols, 784–785
description service, 785–786
discovery service, 786
conditional breakpoints, 291
conditional directives, 172–175
conditional operators, 80–81
connected ADO.NET, 624–644
connecting to, opening, and closing databases, 625–629
insert, update, and delete commands, 634–636
querying databases, 629–634
returning single value from query, 637–639
using with transactions, 639–644
working with, 624–625
connecting databases, 626–627
Console Application (.NET) icon, 284
console applications
building multicultural, 913–917
defined, 27
Web services client, 801–802
const modifier, 64
Constraint classes, 650
constructors
adding to Managed C++ class library, 274–277
class, 129–130
constructor initialization, 38
for delegates, 215
for Thread class, 820
container controls
GroupBox, 404–408
Panel, 408–412
Splitter, 469–473
adding to Win Form, 469–470
keys to working with, 472
sample listings, 470–472
TabControl, 464–469
content database table column descriptions, 615
content nodes, 662
context menus, 509
controls, 389–447. See also GDI+; views; and specific controls
adding, 389–390
ASP.NET Web Form vs. HTML server, 732
building Table, 768
button, 394–404
about, 394
CheckBox control, 397–401
placing Button control on Win Form, 395–397
properties provided by ButtonBase, 394–395
RadioButton, 402–404
Web application hyperlink and, 750–757
container
GroupBox, 404–408
Panel, 408–412
Splitter, 469–473
TabControl, 464–469
defined, 389
dragging and dropping
onto Win Form, 390
to Web Form, 729
ErrorProvider, 493–497
properties of, 493
event handlers added to, 385–386
Label, 391–394
ListView, 450–456
MonthCalendar, 489–492
NotifyIcon, 497–501
PictureBox, 486–489
ProgressBar, 444–447
selection, 425–443
CheckedListBox, 438–443
ComboBox, 433–437
common properties of ListControl class, 426
ListBox control, 426–433
overview, 425–426
StatusBar, 481–485
text, 412–418
timers, 443–447
ToolBar, 473–481
TreeView, 456–464
user, 773–781
about, 773
creating, 773–775
dynamically implementing, 778–781
statistically implementing, 776–778
Web applications, 739–772
Image, 742–747
Label, 739–742
list, 757–764
Table, 764–772
coordinate systems for GDI+, 544–547
clipping rendered coordinate strings, 540–541
corrected clipping problem, 542–544
CorrectingCoords.exe file, 543
Create Database dialog box, 612
creating assembly resources, 893–896
building text name/value pair resource files, 894
files and formats for, 893–894
CTS (Common Type System), 22–25
about, 22–24
built-in value and reference types with language keywords, 24
CTS hierarchy, 23
reference types, 22
value types, 22
culture, 906–907
defined, 906
setting, 907–908
two-letter codes for country/region, 907
custom attributes
defined, 870–873
documentation, 872–873
implementing, 874–875
using, 875–880
custom color, 569–570
custom dialog boxes, 513–522. See also dialog boxes
creating, 513–514
DialogResults for, 516
sample listing
of implementing, 520–521
for MyDialog class file, 517–519
Custom Form window, 383
custom pens, 571
customizing
"Hello, World!" form, 378–383
Windows Forms applications, 378–383