<c> element, 930, 932
C# language
advantages of, 8
application development, 8
basic syntax, 30–32
type-safe languages, 8
Web application types, 9
Web service application types, 9
Windows application types, 9
Cab Project template, 548
CacheDuration property, 665
caching
cache state, server-side state management, 602–603
EnableCaching property, 620
GAC (Global Assembly Cache), 6, 874
Calendar control, Web programming, 589
Call Stack window, 171
calling
assemblies, 870–873
methods on Web services, 661–663
camelCase naming system, 40
CanRedo property, 419
CanUndo property, 419
carriage return (r) escape sequence, 41
case statements, 73
CaseInsensitiveComparer class, 315
case-sensitivity
camelCase naming system, 40
comments, 32
functions, 123
PascalCase naming system, 40, 123
strings, 103, 315
casting, explicit conversion, 92
Catalog zone, Web Parts framework, 646–648
catch block, 172–173
CausesValidation property, 403
center alignment, 423
ChangePassword security control, 609
char type, 36, 41
CharacterCasing property, 403
characters
escape sequence, 37
white space, 30
CheckAlign property, 413
CheckBox control
dialog creation example, 415–416
discussed, 412
events, 414
GroupBox controls, 414–415
properties, 413–414
Web programming, 588
Checkbox1Label property, 567
Checkbox2Property property, 567
Checkbox2Visible property, 567
Checkbox3Visible property, 567
Checkbox4Visible property, 567
CheckBoxes property, 432
checked keyword, 93, 320
Checked property, 413, 455
CheckedChanged property, 413–414, 455
CheckedIndices property, 427, 432
CheckedItems property, 427, 432
CheckedListBox control
discussed, 425
events, 428
methods, 427
properties, 426–427
CheckForMessage() method, 373
CheckOnClick property, 427, 455
CheckState property, 414
CheckStateChanged property, 414
Choose Data Source dialog, 826, 833
chrome frames, Web Parts framework, 643
Circle class, 858
Class Details window, 246
class diagrams, XML documentation, 937–939
Class icon, Class View window, 220
Class value, attribute targets, 905
Class View menu, Solution Explorer window, 21–22
Class View window
class hierarchy, 218–219
Class icon, 220
Enumeration icon, 220
Enumeration item icon, 220
Event icon, 220
Field icon, 220
Interface icon, 220
Internal icon, 221
member groupings, 219
Method icon, 220
Namespace icon, 220
Private icon, 221
Project icon, 220
Property icon, 220
Protected icon, 221
Struct icon, 220
classes
abstract
abstract members, 230
discussed, 192–193, 206
interfaces versus, 229–230
adding, 223
base, 191
BinaryFormatter, 731
BitMap, 1002
black outline indication, 225
blue box indication, 225
Brush, 995–997
CaseInsensitiveComparer, 315
Circle, 858
class diagrams, 224–225, 245–246
class keyword, 205–206
class library projects, 226–228, 260–261
ClassA type, 302
ClassB type, 302
ClassC type, 302
ClassD type, 302
CollectionBase, 279–280, 337
ColorDialog, 530–531
ColumnHeader, 434
CommonDialog, 490–491
constructors, adding, 214
contained, 195–196
Control, 393
DeflateStream, 703
delegates, 360
derived, 191
Directory, 704
DirectoryInfo, 706–707
entry point, 223–224
fields
adding, 248
defining, 238
File, 704
FileInfo, 704–706
FileIOPermission, 539
filenames, 223
FileStream
file positions, 709
FileAccess enumeration, 708
FileMode enumeration, 708–709
overview, 707
reading data using, 710
writing data using, 712–713
FileSystemWatcher, 732–736
FileWebRequest, 964
FileWebResponse, 964
FolderBrowserDialog, 531–533
Font, 997–1001
FontDialog, 528–530
FtpWebRequest, 964
FtpWebResponse, 964
generic
CollectionBase class, 337
constraining types, 348
creating, 345–347
default keyword, 347–348
defined, 325
defining, 350–352
Dictionary<K, V> object, 343–344
flexible type creation, 327
generic lists, searching and sorting, 337–340
generic structs, 357
inheriting from, 354–355
interfaces, 358
List<T> object, 335–336
methods, 358–360
naked type constraint, 349
naming, 345
nullable types, 327–331
?? operator, 329–330
operators, 356–357
read-only access, 346
reflection, 346
System.Collection.Generic namespace, 326, 334–335
System.Text namespace, 334
unbounded types, 348
vector representation, 333–334
GenericRow, 915
Graphics, 982–983
GraphicsPath, 988
GZipStream, 703
HttpRequest, 600
HttpResponse, 599
HttpSessionState, 601
HttpWebRequest, 964
HttpWebResponse, 964
input/output, 702–703
interface definitions, 208–209
interface implementation, 253–257
internal, 206
LinearGradientBrush, 995
lollipop indication, 225
members
hiding base class methods, 250–251
member definitions, 237–238
nested type definitions, 253
refactoring, 248–249
this keyword, 252
methods
adding, 246–247
definitions, 238–240
objects and, 183–184
OpenFileDialog, 492
override keyword, 250–251
PageSetupDialog, 519–521
parent, 191
partial class definitions, 257–258
Pen, 992–995
pointer manipulation, 233–234
PrintController, 515, 517–518
PrintDialog, 521–523
PrintDocument, 514–515
PrintPreviewControl, 527
PrintPreviewDialog, 526–527
private keyword, 238
properties, adding, 247–248
property definitions, 240–243
protected keyword, 238
public, 206
Random, 374
Region, 988
SaveFileDialog, 505–508
sealed, 193, 206
Shape, 852
shared characteristics, 230
ShowFileDialog, 492
SoapHttpClientProtocol, 666
SolidBrush, 995
static, 188
StreamReader
compressed data, 723–727
delimited files, 719–721
overview, 716
reading data using, 718–719
stream input, 717
StreamWriter, 714–716
StringBuilder, 341
structs versus, 232–233
System.Array
Add() method, 276
collections, 271, 275
discussed, 266
GetEnumerator() method, 277
RemoveAt() method, 277
System.Collections, 272
System.EventArgs, 378
System.Object
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
System.Timers.Timer, 370
TcpClient, 971
TcpListener, 971
TextureBrush, 995
Triangle, 858
virtual, 192
WebClient, 961–963
WebRequest, 963–964
WebResponse, 963–964
XmlAttribute, 752
XmlComment, 752
XmlDocument, 752, 946
XmlElement, 752–753
XmlNode, 752
XmlNodeList, 752
XmlText, 752
Clear() method, 279, 433
ClearSelected() method, 427
Click event, 396, 398, 455
Click property, 413
ClickOnce deployment
manifest files, 537–539
uses for, 536
client application types, Web services, 657
client protocols, Web services, 666–667
client-side state management, 598–600
ClientTarget property, 597
clipping, GDI+, 1010–1011
Clone() method, 234, 294
CloseVerb property, 643
CLR (Common Language Runtime), 4, 855
CLS (Common Language Specification), 855
code
block of code example, 30
case-sensitivity, 32
compiling, 5
Console.ReadKey(),19
native, 5, 7
unsafe, 8
<code> element, 930, 932
code outlining system, Visual Studio, 27–28
CodeFile property, 633
colHead variable, 437
CollectionBase class, 279–280, 337
collections
adding to libraries, 283–285
arrays versus advanced collections example, 272–275
capacity of, 276
CollectionBase class, 279–280
deep copying, 292–295
defining, 279–280
ICollection interface, 272
IDictionary interface, 272, 285–287
IEnumerable interface, 272
IList interface, 272, 279
indexers, 280–281
iterators, 287–291
keyed, 285–287
object relationships, 196–197
sorting, 315–318
System.Array class
Add() method, 276
collections, 271, 275
discussed, 266, 271
GetEnumerator() method, 277
RemoveAt() method, 277
System.Collections class, 272
colon (:), 185
Color property, 531
Color structure, GDI+, 991–992
ColorDialog class, 530–531
ColumnClick event, 434
ColumnHeader class, 434
columns
aligning strings in, 115
ConstructColumns() function, 923
DataSet object, 786–787
Columns property, 432
ColumnWidth property, 426
COM (Component Object Model), 853
Command object, 775
command prompt window, console applications, 20
Command property, 561–562
Command window, 170–171
CommandBuilder object, 775
command-line parameters, Main() function, 141–143
commands. See also functions; methods
break,86
Console.WriteLine(), 32–33
Enum.Parse(), 102–103
HEAD, 959
immed, 170
PadLeft(), 115
PadRight(), 115
SELECT, 620, 815
Split(), 117–118
ToCharArray(), 113–114, 713
ToString(), 102
ToUpper(), 114
Trace(), 161
Trim(), 114
TrimStart(), 115
comma-separated value (CSV), 719–721
comments
case-sensitivity, 32
marker placement, 31
single line, 32
Common Language Runtime (CLR), 4, 855
Common Language Specification (CLS), 855
Common Object Request Broker Architecture (CORBA), 654
Common Type System (CTS), 4, 855
CommonDialog class, 490–491
Compare() method, 314–315, 342
CompareTo() method, 314
CompareValidator control, Web programming, 594
comparison operators, 58
comparisons
type comparisons
boxing and unboxing, 297–299
is operator, 299–302
value comparisons
Compare() method, 314–315
CompareTo() method, 314
IComparable interface, 313–316
IComparer interface, 313–316
operator overloading, 302–306
compilation and runtime information, debugging, 153
compiling code, 5
Component Object Model (COM), 853
components
assemblies, 852–853
binary units, 852
Windows Installer feature, 549
compressed data, 723–727
Condition property, 559
Conditional attribute, 889
conditional operators, 44, 59
Configuration Data Source dialog, 614–616
configurations
authentication, 604–607
exceptions, 178
IIS (Internet Information Services), 685–687
Configure() method, 634
Confirm Installation dialog, User Interface Editor, 564
ConformanceClaims property, 666
Connect() function, 373
ConnectDisplayMode property, 651
Connection class, 373
Connection object, 775
Connection Properties dialog, 828
connections, database
database connection example, 826–828
relational databases, 829
Connections zone, Web Parts framework, 648–651
console applications
basic structure, 32–33
command prompt window, 20
creation example, 17–21
defined, 13
Console.ReadKey() code, 19
Console.WriteLine() command, 32–33
const keyword, 74, 107
constant variables, 74
constraining types, generic classes, 348
ConstructColumns() function, 923
Constructor value, attribute targets, 905
constructors
adding to classes, 214
default, 187, 214
discussed, 213
execution sequence, 215–218
nondefault, 187, 214
private default, 214
consumer objects, ADO.NET, 776
ConsumerConnectionPointID property, 650
ConsumerID property, 650
contained classes, 195–196
containment, object relationships, 195–196
Content control, master pages, 629–631
ContentPlaceHolder control, master pages, 625
Context property, 664
continue statement, 86
Control class, 393
control layout, Windows Forms applications, 26
controls
Calendar, 589
ChangePassword, 609
CheckBox
dialog creation example, 415–416
discussed, 412
events, 414
GroupBox controls, 414–415
properties, 413–414
Web programming, 588
CheckedListBox
discussed, 425
events, 428
methods, 427
properties, 426–427
CompareValidator, 594
Content, 594
ContentPlaceHolder, 625
CreateUserWizard, 609
custom controls, 478
CustomValidator, 595
DataList, 613
DetailsView, 613
FormView, 613
GridView, 613
GroupBox, 414–415
Hyperlink, 588
Image, 589
ImageButton, 588
ImageList, 434–435
ListBox
dialog creation example, 428
discussed, 425
events, 428–429
properties, 426–427
Web programming, 588
ListView
ColumnHeader class, 434
discussed, 430
event handlers, 436–438
ImageList control, 434–435
interface creation example, 435–436
ListViewItem control, 434
PaintListView() method, 440–441
properties, 431–433
Literal, 588
Login, 608
LoginName, 609
LoginStatus, 608
LoginView, 609
ObjectDataSource, 613
PasswordRecovery, 609
RadioButton
dialog creation example, 415–416
discussed, 412
events, 413
properties, 413
Web programming, 588
RangeValidator, 594
RegularExpressionValidator, 594
Repeater, 613
RequiredFieldValidator, 594
RichTextBox
dialog creation example, 420–421
events, 420
properties, 418–420
SiteMapPath, 632
SiteMapSource, 613, 632
SqlDataSource, 613
StatusStrip, 464–466
StatusStripStatusLabel, 464–466
TabControl
discussed, 442
properties, 443
TabPages property, 444–445
TextBox
Web programming, 588
Windows programming, 403–406
TreeView
navigation, 632
Web programming, 589
user controls
debugging, 483–484
defined, 477
event handlers, 482–483
LabelTextbox control example, 479–481
properties, adding, 481–482
ValidationSummary, 595
ViewState, 598–600
WebPartManager, 641
WebPartZone, 641–642
Windows programming, 392–395
XmlDataSource, 613
ZoneTemplate, 641
conversions
as operator, 321–322
explicit conversion
casting, 92
convert commands, 95–97
mathematical operators, 45
overflow, 93
overview, 91
implicit conversion
interchangeable values, 90–91
mathematical operators, 45
overloading conversion operators, 319–320
convert commands, explicit conversion, 95–97
ConvertDataType() method, 920–921
cookies, client-side state management, 599–600
coordinate system, GDI+, 984–987
Copy() method, 704
copying
deep, 234, 292–295
GetCopy() method, 292
objects, 234
shallow, 234
Web sites, 689–691
CopyTo() method, 266
CORBA (Common Object Request Broker Architecture), 654
Create() method, 704
Create property, 708
CreateAttribute() method, 758
CreateComment() method, 758
CreateDirectory() method, 704
CreateElement() method, 758
CreateGraphics() method, 982
CreateHeadersAndFillListView() method, 436
CreateNew property, 708
CreateNode() method, 758
CreateTextNode() method, 758
CreateUserWizard security control, 609
CreationTime property, 706
Credentials property, 962
cross-language programming, assemblies, 854–855
Crystal Reports for .NET, 555
CSV (comma-separated value), 719–721
CTS (Common Type System), 4, 855
curly brackets ({ }), 30, 862
Current property, 287
Custom Actions Editor, 557
custom attributes, 899–903
custom controls, 478
custom data types, Web site profiles with, 638
custom exceptions, object-oriented programming, 365–366
CustomColors property, 530–531
Customer Information dialog, User Interface Editor, 566
CustomValidator control, Web programming, 595