
Pro CSharp 2008 And The .NET 3.5 Platform [eng]
.pdf
1342 ■I N D E X
CreateText( ) method, FileInfo class, System.IO, 669, 672
CreateWorkflow( ) method, 931
CreationTime property, FileSystemInfo class, 663 Credentials property, 892
*.cs file, 896, 927 csc.exe compiler, 35
@ symbol (response files), 41 command-line flags, 37–38 compile parameters, 37–38
default response file (csc.rsp), 41–42 first C# application, 37 mscorlib.dll, 38
multiple external assemblies, 39 multiple source files, 39–40 /noconfig command-line flag, 41–42 /nostdlib command-line flag, 38 /out command-line flag, 37
reasons for using, 36–37 /reference command-line flag, 39
referencing external assemblies, using keyword, 38
response files, 40–41
/target command-line flag, 37 wildcard character, 40
CSharpComClient, 1285 *.csproj file, 1023, 1030, 1190
CssClass property, WebControl base class, 1213 CssStyle property, 1237
CType( ) function, 211 curly brackets, 115 currBalance field, 154
Current property, Application type, 1006 currentColor member variable, 994 CurrentContext property, Thread type, 594 currentShape variable, 993–994 CurrentSize member, 703
CurrentThread property, Thread type, 594–596 currentVideoGames local variable, 454 currInterestRate class, 154
currInterestRate variable, 157 currValue type, 1072
Cursor property, 1096 custom constructor, 128
custom exceptions, structured exception handling, 231, 233–234
custom interfaces, defining, 272 custom namespaces, 475–476 custom parameters, 931 custom type conversion
CIL special names, 403–404
conversions among related class types, 397–398 explicit keyword, 398–399, 401
implicit conversions, 397
implicit keyword, 398–399, 401–403 numerical conversions, 397
custom view states, state management in ASP.NET, 1250
custom web controls, 1216 CustomAttributeBuilder, System.Reflection.Emit
namespace, 649 CustomBinding type, 881
<customErrors> element, web.config File, 1204 CustomValidator control, ASP.NET, 1231
D
D string, 78 dash style, 1130
DashStyle object, 1130 data adapter, 783
data binding model, 1055
data caching, ASP.NET, 1259, 1261, 1263 data contracts, 875, 910
Data property, System.Exception, 222, 229–230 data providers, ADO.NET, 733–734
data templates, 1080, 1111 data type conversions, 95, 100
DataAdapter object, ADO.NET data providers, 734 /database option, 848
Database property, DbConnection, ADO.NET, 757 DatabaseReader class, 138, 160
DataBind( ) method, System.Web.UI.Control in ASP.NET, 1209
data-binding engine, 1002 data-centric controls, 1213 data-centric single-file test page
adding data access logic, 1182–1183 designing the UI, 1181–1182
manually referencing AutoLotDAL.dll, 1180 overview, 1180
role of ASP.NET directives, 1183–1185 DataColumn object, 784, 788 DataColumn type, 787 _DataConnector interface, 1295 DataContext property, 1104, 1111 DataContext type, 844–846 DataContext-derived type, 846, 852–853 [DataContract] attribute, 910 dataGridColtsView object, 808 dataGridColtsView type, 806 DataGridView control, 798 DataGridView object, 814 DataGridView type, 806
DataGridView widgets, 815 DataGridViewRowPostPaintEventArgs parameter,
808
[DataMember] attribute, 910
DataReader object, ADO.NET data providers, 733 DataRelation object, 814, 816
DataRelation, System.Data, ADO.NET, 737 DataRelation type, 784 DataRelationCollection collection, 784 DataRow class, 784, 805 DataRow.AcceptChanges( ) method, 792 DataRow.BeginEdit( ) method, 792 DataRow.CancelEdit( ) method, 792

DataRow.EndEdit( ) method, 792 DataRowExtensions member, 840 DataRow.GetChildRows( ) method, 819 DataRow.RejectChanges( ) method, 792 DataRows type, 837
DataRowState property, 792 DataRowVersion property, 793 DataSet member, 793 DataSet objects, 783 DataSetName property, 785 DataSets type, 837
DataSource property, 757, 801, 807 DataSourceID property, 1221, 1224–1225 DataTable class, 828
DataTable object, 912 DataTable.AcceptChanges( ) method, 802 DataTableCollection collection, 784 DataTableExtensions type, 840 DataTable.NewRow( ) method, 790 DataTableReader property, 795 DataTableReader, System.Data, ADO.NET, 737 DataTables type, 837
<DataTemplate> element, 1112 <DataTrigger> element, 1142 DataType property, 787 DataTypeFunctionality( ) method, 86 DateTime structure, 94
DateTime type, 83 DbCommand, ADO.NET, 760 DbConnection, ADO.NET, 757 DbDataAdapter base class, 808
DbDataReader object, ADO.NET, 760–761 DbParameter, ADO.NET, 767
DbType property, 767, 848 Deactivate event, 972 debugging, 215, 626, 1188 DecelerationRatio property, 1138
DeclareImplicitVars( ) method, 416 Decrement( ) method, 607
deep copy, cloneable objects (ICloneable), 299 default constructor, 128, 144
default interface, 1295 default keyword, generics, 331 Default value, 792
Default Web Site node, 1165 [default] interface, 1301
default.aspx content page example, ASP.NET, 1222–1224
Default.aspx file, 1182, 1193, 1241, 1274 default.htm file, 1173–1174 defaultValue attribute, Profile Data, 1274 DefaultValue property, 787
DefaultView member, 793
#define, preprocessor directive, 411, 413–414 DefineEnum( ) method, ModuleBuilder type, 653 DefineResource( ) method, ModuleBuilder type,
653
DefineType( ) method, ModuleBuilder type, 653
■I N D E X 1343
Delay property, 1071 DelayActivity, WF, 921 delegates
asynchronous call, 342–344
CIL code for simple example, 346 compared with C-style callbacks, 341 complex example, 353–354 contravariance, 359
covariance, 358–359, 362 delegate keyword, 342, 345, 1304 description, 341–342
example, 348–351 information in, 341–342 multicasting, 344–345, 351–353
and multithreaded applications, 585, 587 NullReferenceException, 350–351 overview, 341
as parameters, 354–357 simple example, 345–346 synchronous call, 342 type safe, 347–348
delegation. See containment/delegation Delete( ) method, 663, 669, 790, 801 DeleteCommand property, 812
Deleted value, 791 DeleteDirectory( ) method, 703 DeleteFile( ) method, 703 deleting records, ADO.NET, 765 Delta property, 975
dependency property, 1060, 1137 DependencyObject type, 1139 DependencyProperty object, 1062 DependencyProperty.Register( ) method, 1062 deployment, .NET runtime, 31–32
derived class, 186 derived types, 270
descending operator, 463, 468 Description property, 907 *.Designer.cs file, 926, 964, 983 desktop markup, 1000 Detached value, 791 developing software
as a C++/MFC programmer, 4 as a COM Programmer, 5
as a C/Win32 programmer, 3 as a Java/J2EE Programmer, 4
as a Visual Basic 6.0 programmer, 4 as a Windows DNA Programmer, 5–6
DevX website, 1331 diagnostics subelement, 894 DialogResult property, 1114 DialogResult type, 974
DialogResult value, 982
Dictionary object, 932 Dictionary<string, object> type, 932
differences, classes, objects, references, 245 digital signatures and strong names, 505–506 direct event, 1065
com/.apress.http://superindex at faster it Find

1344 ■I N D E X
Direction property, ADO.NET DbParameter, 767 Directory type, System.IO, 667
DirectoryInfo class
Create( ), CreateSubdirectory( ) methods, 663, 666
Delete( ) method, 663 GetDirectories( ) method, 663 GetFiles( ) method, 663, 665 MoveTo( ) method, 664 Parent property, 664
Root property, 664 DirectX, 1000 DirectX API, 1000 DirectX engine, 1001 disco utility, 1322
DiscreteDoubleKeyFrame type, 1144 DiscreteStringKeyFrame type, 1143 DiscreteXXXKeyFrame type, 1142 [DispId] attribute,
System.Runtime.InteropServices, 1306 Display member, ASP.NET validator, 1231 Display property, 1235
DisplayAsmEvidence( ) method, 690 DisplayDefiningAssembly( ) method, 425 DisplayMemberBinding data binding value, 1114 disposable objects, 259–262
Dispose( ) method, 259, 964, 989
Distributed Component Object Model (DCOM), 868
*.dll assemblies, 946 DLL hell, 5
*.dll server, 1284
DllImport attribute, 543, 1284 /doc compiler flag, 179 DockPanel control, 1056, 1084
<DockPanel> element, 1094, 1096, 1109 DockPanel.Dock value, 1092 DOCTYPE processing instruction, 1168
Document Object Model (DOM), ASP.NET, 1172–1173
documenting VB 2005 source code via XML, 176–180
Domain Name Service (DNS), 1163 DomainUnload event, System.AppDomain, 573,
576–577 DontUseCoreLibDumper.dll assembly, 1327 dot operator and references, 246 DotNetCalc class, 1308–1309, 1311 _DotNetClass interface, 1311
dotnetfx.exe, .NET runtime deployment, 31–32 double data type, 81
double type, 111 double value, 1130
DoubleAnimation object, 1137 DoubleAnimation type, 1138–1139 <DoubleAnimation> element, 1142 DoubleAnimationUsingKeyFrames type, 1144 DoubleClick event, 970
DoubleConverter type, 1107 do/while statement, 102 download cache, 485 Download Now button, 1318 DoWork event, 614 DragDrop event, 970 DragEnter event, 970 DragLeave event, 970 DragOver event, 970
Draw( ) method, 205, 283, 286 DrawArc( ) method, 987 DrawBeziers( ) method, 987 DrawCurve( ) method, 988 DrawEllipse( ) method, 988 DrawIcon( ) method, 988 DrawIn3D( ) method, 279 DrawingBrush type, 1127 DrawingContext object, 1122 Drawing-derived types, 1120, 1130 DrawingGroup type, 1130, 1133 DrawingImage object, 1133 DrawingVisual type, 1122 DrawLine( ) method, 988–989 DrawLines( ) method, 988 DrawPath( ) method, 988 DrawPie( ) method, 988 DrawRectangle( ) method, 988 DrawRectangles( ) method, 988 DrawString( ) method, 988–989 DriveInfo class, System.IO, 668–669
DriveInfo type, input/output, System.IO, 662 DriveInfoApp.exe application, 697 driverInfo property, 1303
DropDownItems property, 960 DumpTypeToFile( ) method, 1323 duplex messaging, 882
Duration property, 1138–1139, 1144 dynamic assemblies
ConstructionBuilder example, 654–655 definition, 648
emitting a method, 655–656
emitting type and member variables examples, 654
overview, 617
vs. static assemblies, 648
using a dynamically generated assembly, 656–657
dynamic loading, 536–537
E
e string, 78
ECMA standardization, .NET Framework, 32 ECMA-334, 1316
ECMA-335, 1316
ECMA-compatible implementation, 1330 EditingCommands object, 1100 ElementName value, 1103
#elif, preprocessor directive, 411–413

|
■I N D E X |
1345 |
Ellipse object, 1111 |
EndScope( ) method, |
|
Ellipse types, 1066, 1136, 1156 |
System.Reflection.Emit.ILGenerator, 650 |
|
EllipseGeometry type, 1131 |
EnforceConstraints property, 785 |
|
#else, preprocessor directive, 411–413 |
Enter key, 202 |
|
else statement, 103 |
entity classes, 837 |
|
Emit( ) method, |
EntitySet<T> type, 851 |
|
System.Reflection.Emit.ILGenerator, 650 |
EnumBuilder, System.Reflection.Emit namespace, |
|
EmitCall( ) method, |
649 |
|
System.Reflection.Emit.ILGenerator, 650 |
enumData object, 841 |
|
emitting a dynamic assembly example, 650–652 |
Enumerable extension methods, 460, 464 |
|
Emitting HTML, ASP.NET, 1199 |
enumerable types, 289, 291, 456, 459–461, 471 |
|
EmitWriteLine( ) method, |
Enumerable.Distinct<T>( ) method, 465 |
|
System.Reflection.Emit.ILGenerator, 650 |
Enumerable.Except( ) method, 469 |
|
empAge using property syntax, 168 |
Enumerable.OfType<T>( ) method, 458 |
|
Employee class, 165 |
EnumerableRowCollection object, 840 |
|
EmpType enumeration, 121 |
Enumerable.Where<T>( ) method, 460 |
|
Enable Click Once Security Settings check box, 708 |
Enumerable.Where<T> variable, 452 |
|
EnableClientScript member, ASP.NET validator, |
enumerating controls with Panel control, ASP.NET, |
|
1231 |
1210 |
|
Enabled property, WebControl base class, 1213 |
enumeration, 18–19, 121 |
|
EnableTheming attribute, <%@Page%> directive, |
Enum.Format( ) method, 124 |
|
1184 |
Enum.GetUnderlyingType( ) method, 123 |
|
EnableTheming member, System.Web.UI.Control, |
enums, common intermediate language (CIL), 633 |
|
1209 |
Environment type, 75 |
|
EnableTheming property, System.Web.UI.Control |
Environment.GetCommandLineArgs( ) method, |
|
in ASP.NET, 1209 |
1015 |
|
EnableViewState attribute, <%@Page%> directive, |
Equals( ) method, 87, 91, 213, 215, 441–443, 467 |
|
1184, 1249 |
equals operator, 466 |
|
EnableViewState property, 1250 |
Error event, ASP.NET, 1202 |
|
encapsulation, 141, 160 |
%ERRORLEVEL% environment variable, 71 |
|
class properties, 168–170 |
ErrorMessage dictionary, 932 |
|
controlling visibility levels of property get/set |
ErrorMessage member, ASP.NET validator, 1231 |
|
statements, 170–171 |
ErrorMessage property, 933, 1232 |
|
get, set properties vs. accessor and mutator |
escape characters, 89 |
|
methods, 168–170 |
event interface, 305, 307–308 |
|
internal representation of properties, 169–170 |
event keyword, 363 |
|
overview, 164–165 |
event trigger, 1141–1142 |
|
read-only and write-only properties, 171 |
EventArgs type, 961 |
|
read-only class properties, 171 |
EventBuilder, System.Reflection.Emit namespace, |
|
Shared properties, 171–172 |
649 |
|
static class properties, 171 |
event-driven entity, 1208 |
|
using traditional accessors and mutators, |
EventDrivenActivity, WF, 921 |
|
165–166 |
EventHandler<T> delegate, 369 |
|
using type properties, 167–168 |
EventHandlingScopeActivity, WF, 921 |
|
visibility of get/set statements, 170 |
EventInfo class, System.Reflection namespace, 528 |
|
write-only class properties, 171 |
events |
|
End construct, 206 |
compared with delegates, 362 |
|
End keyword, 141 |
event keyword, 362 |
|
End( ) method, 1199 |
example, 363–364 |
|
EndClose( ) method, 892 |
explanation, 364–365 |
|
EndEdit( ) method, 805 |
listening to incoming events, 365–366 |
|
EndExceptionBlock( ) method, |
Microsoft recommended pattern, 367–368 |
|
System.Reflection.Emit.ILGenerator, 650 |
overview, 341 |
|
#endif, preprocessor directive, 411–413 |
registration, 365–367 |
|
EndInvoke( ), multithreaded applications, 587–588 |
<EventTrigger> element, 1142 |
|
EndOpen( ) method, 892 |
evidence, role of in code access security, 689–692 |
|
<endpoint> element, 884, 889, 894, 897 |
<example> code comment, XML Elements, 177 |
|
#endregion, preprocessor directive, 411 |
Exception class, 222, 230 |
|
com/.apress.http://superindex at faster it Find

1346 ■I N D E X
_Exception interface, 222
<exception> code comment, XML Elements, 177 exceptions, 219, 240
Exchange( ) method, 607
ExecuteAssembly( ), System.AppDomain, 572 ExecuteCode property, 927, 929, 936 Executed event, 1101
ExecuteMethodCall( ) method, 852 ExecuteNonQuery( ) method, 760, 853 ExecuteReader( ), DbCommand, ADO.NET, 760 ExecuteScalar( ), DbCommand, ADO.NET, 760 ExecuteXmlReader( ), DbCommand, ADO.NET, 760 existing class definitions, 160
Exit event handler, 1023 ExitCode property, 76
ExitCode, System.Diagnostics.Process, 564 ExitEventArgs type, 1012 ExitEventHandler delegate, 1012 ExitTime, System.Diagnostics.Process, 564 ExpandDirection property, 1074 Expander control, 1056
Expander type, 1058, 1074, 1097 Expander widget, 1094
explicit casting, 96, 209, 276–277
explicit keyword, custom type conversion, 398–399, 401
Expression Blend, 1052–1053 Expression property, 787 ExtendedProperties property, 785
Extensible Application Markup Language (XAML), 999
attached properties, 1038–1039 Browser Applications (XBAPs), 1004 building XAML-free WPF applications
creating simple user interface, 1013–1015, 1021
extending Window class type, 1013 overview, 1011–1013
defining application object in, 1023, 1033 defining MainWindow in, 1022–1023 elements and attributes, 1035 experimenting with using XamlPad, 1032 mapping to C# code, 1025–1026
markup extensions, 1039–1041 overview, 1021–1022
processing at runtime, 1048–1052 processing XAML files via msbuild.exe,
1023–1024
property-element syntax, 1036–1037 type converters, 1039
extension methods, 453
Extension property, FileSystemInfo class, 663 Extensions class, 432
F
F or f string format, .NET, 78 FaultHandlerActivity, WF, 921
field directive, common intermediate language (CIL), 636
FieldBuilder, System.Reflection.Emit namespace, 649
FieldInfo class, System.Reflection namespace, 528 Field<T>( ) extension method, 841
File class, System.IO, 673, 675 File System option, 1188
File Transfer Protocol (FTP), 1164 FileExit_Click( ) method, 1095 FileInfo class, System.IO, 669–672 FileName property, 997
FilePath member, HttpRequest Type, 1196 FileStream class, System.IO, 676–677 FileStream type, input/output, System.IO, 662 FileSystemInfo class, 663
FileSystemWatcher class, System.IO, 683, 685 FileSystemWatcher type, input/output, System.IO,
662
Fill( ) method, 808, 810, 813 Fill property, 1125 FillBehavior property, 1138 FillContains( ) property, 1131 Filter property, 997 finalizable objects, 256 finalization details, 258
Finalize( ) method, 213, 256–258
finally block, structured exception handling, 239–240
finalPoint variable, 437
FindMembers( ) method, System.Type class, 529 FindResource( ) method, 1155 FinishButtonClick event, 1229
firstPoint variable, 437 fixed keyword, 409–410 float data type, 81 float variable, 81
flow documents, 1083 Flush( ) method
ASP.NET HTTP Response, 1199 BinaryWriter class, 682 HttpResponse Type, 1199 Stream class, System.IO, 676 TextWriter, System.IO, 678
Font property, WebControl base class, 1213 FontSize property, 1148, 1154
Foo( ) method, 426 for loop, 73
for statement, 100 forcing, 253–254
forcing garbage collection, 255 foreach keyword, 73, 101 foreach looping construct, 417
ForeColor member, ASP.NET validator, 1231 ForeColor property, WebControl base class, 1213 Foreground property, 1154
ForegroundColor property, 76 Form class, 957, 978
form control declarations, ASP.NET, 1185 form data, access in ASP.NET, 1197–1198 Form event, 707

|
■I N D E X |
1347 |
Form member, HttpRequest Type, 1196 |
SuppressFinalize( ) method, 252 |
|
Form property, 1197 |
System.GC, 252 |
|
form statement, 1195 |
threads suspended, 248 |
|
Form type, 968 |
timing of, 247 |
|
<form> element, 1169, 1174, 1181, 1185, 1210, |
unmanaged resources, 252, 256–258, 262 |
|
1222–1223, 1249 |
WaitForPendingFinalizers( ) method, 252–253 |
|
Form1.cs file, 798, 979, 991 |
when heap objects are removed, 246, 248 |
|
Form1.cs icon, 963 |
*.g.cs file, 1029, 1059 |
|
Format( ) method, 87 |
GDI+, System.Drawing.Graphics class, 987 |
|
FormatException exception, 78 |
generic method |
|
FormatNumericalData( ) method, 78 |
custom, creating, 327 |
|
FormBorderStyle property, 971, 979 |
example code, 328–329 |
|
FormBorderStyle.FixedDialog dialog box, 979 |
type parameter omission, 328–329 |
|
Form-derived class, 1245 |
generic mono C# compiler (gmcs), 1321 |
|
Form-derived type, 815, 958, 963 |
generics |
|
FrameworkElement base class, 1080, 1123, 1134 |
base classes, 337 |
|
FrameworkElement class type, 1062 |
boxing and unboxing issues, 316, 318–319, |
|
FrameworkElement element, 1119 |
321–323 |
|
FrameworkElement member, 1061 |
constraining type parameters using where, |
|
FrameworkPropertyMetadata object, 1063 |
334–336 |
|
Friend access modifier, 163 |
constraints for generic type parameters, |
|
from operator, 463, 465 |
334–336 |
|
From property, 1138–1139 |
custom generic collections, 332–334 |
|
FullName property, FileSystemInfo class, 663 |
default keyword, 331 |
|
fully qualified names, 213, 476–478 |
delegates, 360–361 |
|
Func<> delegate, 459 |
generic methods, 327–329 |
|
Func<> type, 464 |
interfaces, 338 |
|
Func<T, K> type, 461 |
lack of operator constraints, 336–337 |
|
[Function] attribute, 852 |
overview, 309 |
|
/functions option, 848 |
System.Collections.Generic.List<>, 322–324 |
|
FunWithBrushes.xaml file, 1129 |
uses of, 316, 318–319, 321–322 |
|
FunWithDrawingGeometries.xaml file, 1134 |
Geometry property, 1132 |
|
FxCop development tool, 65 |
<GeometryDrawing> type, 1131 |
|
G |
<GeometryGroup> type, 1133 |
|
GET and POST, ASP.NET, 1174–1175 |
|
|
gacutil utility, 1322, 1325 |
Get button, 1246 |
|
garbage collection |
Get scope, 167 |
|
AddMemoryPressure( ) method, 252 |
get_SocialSecurityNumber( ) method, 170 |
|
AddRef( ) not required, 247 |
get_XXX( )/set_XXX( ) method, 169 |
|
application domain, 256 |
GetAllFords( ) method, 863 |
|
application roots, 249 |
GetAllInventory( ) method, 814 |
|
code example, 252–255 |
GetAndValidateUserName( ) method, 929, 933 |
|
Collect( ) method, 252–255 |
GetAssemblies( ), System.AppDomain, 572 |
|
CollectionCount( ) method, 252 |
GetBoolFromDatabase( ) method, 138 |
|
compared with C++, 247 |
GetChanges( ) method, 786 |
|
finalizable objects, 256 |
GetChildRelations( ) method, 786 |
|
finalization details, 258 |
GetColumnsInError( ) method, 789 |
|
forcing, 253–255 |
GetCommandLineArgs( ) method, 74–75 |
|
GetGeneration( ) method, 252 |
GetConstructors( ) method, System.Type class, 529 |
|
GetTotalMemory( ) method, 252 |
GetCurrentProcess( ), System.Diagnostics.Process, |
|
MaxGeneration property, 252 |
565 |
|
object generations, 251–252 |
GetCurrentThreadId( ), System.AppDomain, 572 |
|
object graph use, 249–250 |
GetCylinders( ) method, 1303 |
|
overriding finalize( ), 256–258 |
GetDirectories( ) method, DirectoryInfo class, 663 |
|
overview, 245 |
GetDirectoryNames( ) method, 703 |
|
PInvoke, 256 |
GetDomain( ), GetDomainD( ) methods, Thread |
|
reachable objects, 246 |
type, 594 |
|
Release( ) not required, 247 |
GetEnumerator( ) method, 119, 289, 703, 958 |
|
com/.apress.http://superindex at faster it Find

1348 ■I N D E X
GetEvents( ) method, System.Type class, 529 GetFactory( ) method, ADO.NET, 750 GetFields( ) method, System.Type class, 529 GetFiles( ) method, 663, 665, 703 GetHashCode( ) method, 213, 216, 441–443, 445,
467
GetIDsOfNames( ) method, 1298 GetInterfaces( ) method, System.Type class, 529 GetIntFromDatabase( ) method, 137 GetInventory( ) method, 912, 914 GetInvocationList( ) method,
System.MulticastDelegate/System Delegate, 345
GetMembers( ) method, System.Type class, 529 GetMethods( ) method, System.Type class, 529 GetNestedTypes( ) method, System.Type class, 529 GetNumberOfPoints( ) method, 272 GetObjectData( ) method, 726–727 GetParentRelations( ) method, 786
GetPetName stored procedure, 849 GetProcesses( ), System.Diagnostics.Process, 565 GetProperties( ) method, System.Type class, 529 GetRandomNumber( ) function, 153 GetRenderBounds( ) property, 1131
GetSchema( ) method, DbConnection, ADO.NET, 757
GetStore( ) method, 703 GetStringArray( ) method, 118 GetStringSubset( ) method, 470 GetSubsets( ) method, 466 GetTable( ) method, 846 GetTable<T>( ) method, 846
GetType( ) method, 117, 123, 213, 272, 441, 529–530
GetUserAddress( ) method, 1278 GetUserData( ) method, 77 GetUserStoreForAssembly( ) method, 703–704 GetUserStoreForDomain( ) method, 703–704 GetValue( ) method, 1063
GetValues( ) method, 126 GetVisualChild( ) method, 1122 GiveBonus( ) method, 199
global assembly cache (GAC), 28, 482, 516, 518, 1310, 1317
Global class, 1259
Global.asax event handlers in ASP.NET, 1252–1253 Global.asax file, 1245, 1250–1251, 1253, 1259 <globalization> element, web.config File, 1204 globally unique identifiers (GUIDs), 297–299, 1285 Global.Session_Start( ) method, 1266 GlyphRunDrawing type, 1130
godmode option, 74 goto keyword, 101
<GradientStop> type, 1129
graphical user interface (GUI), 76, 955 Graphics object, 808, 1118
Graphics type, 987 GreenStyle property, 1154
Grid control, 1056, 1084 Grid type, 1097
<Grid> element, 1058, 1071, 1114 Grid.Column property, 1090 <Grid.ColumnDefinitions> element, 1090 Grid.ColumnSpan property, 1109 Grid.Row property, 1090 <Grid.RowDefinitions> element, 1090 <GridSplitter> type, 1091
GridView control, 1056, 1224–1225, 1227 <GridViewColumns> element, 1114 group operator, 463
<group> element, 1278 GroupBox control, 1056 GroupBox type, 817 GroupName property, 1073
GUID compared with strong names, 505–506 [Guid] attribute, 1306, 1309
guidgen.exe utility, 1309–1310
H
Handle, System.Diagnostics.Process, 564 HandleCount, System.Diagnostics.Process, 564 Handled property, 977, 1066
has-a relationship code example, 196 HasChanges( ) method, 786 HasContent property, 1008
HasControls( ) method, System.Web.UI.Control in ASP.NET, 1209
HasErrors property, 785, 789 hash code, 216
Hashtable System.Collections class type, 312 Hashtable type, 216
HasValue property, 137 Header property, 1073
Headers member, HttpRequest Type, 1196 HeaderText property, 1235
Height member, 1061
Height property, 1062, 1085, 1137, 1213 Height value, 1087 HelloWebService.asmx file, 871 HelloWorld( ) method, 871 HelloWorld.asmx file, 872 HelpExecute( ) method, 1102
HelpLink property, System.Exception, 222, 228–229 Hexagon class, 160
Hexagon type, 204–205, 272 Hide( ) method, 971
historical overview of programming C++/MFC, 4
Component Object Model (COM), 5 C/Win32, 3
Java/J2EE, 4
Visual Basic 6.0, 4
Windows DNA, 5–6 Horizontal property, 1089
HorizontalAlignment property, 1156 <host> element, 894

*.htm file, 1168, 1170
HTML and ASP.NET, overview, 1167 HTML document structure, 1168 HTML form development, 1169
HTML tables, positioning ASP.NET controls using, 1243
<html> tag, 1168
HTTP Request processing, ASP.NET, 1195–1198 HTTP Response, ASP.NET, 1198–1200
http:// scheme, 889
HttpApplication members, ASP.NET, 1253 HttpApplication type, 1207, 1245, 1252, 1254, 1269 HttpApplication-derived type, 1256, 1263 HttpApplicationState members, ASP.NET, 1255 HttpApplicationState type, 1254–1256, 1258 HttpBrowserCapabilities object, 1196 HttpCookie type, 1266
HttpCookie.Expires property, 1268 HttpMethod member, HttpRequest Type, 1196 HttpRequest class type, 1196 HttpRequest.Cookies property, 1268 HttpRequest.Form property, 1197 HttpRequest.NameValueCollection type, 1212 HttpRequest.QueryString property, 1197 HttpResponse type, 1198 HttpResponse.Write( ) method, 1199 HttpResponse.WriteFile( ) method, 1199 HttpServerUtility.ClearError( ) method, 1203 HttpServerUtility.GetLastError( ) method, 1203 HttpSessionState class type, 1254 HttpSessionState object, 1247, 1263, 1266, 1272 HybridDictionary member,
System.Collections.Specialized Namespace, 316
HyperLink widget, 1210
Hypertext Markup Language. See HTML Hypertext Transfer Protocol. See HTTP
I
IasyncResult interface, 342–344 IAutoLotService.cs file, 911 IBasicMath.cs file, 901
ICloneable interface, 134, 213, 271, 296, 310 ICollection System.Collections interface, 310 ICollection System.IDictionaryinterface, 311 ICollection System.IDictionaryEnumerator
interface, 311
ICollection System.IList interface, 311 ICommand interface, 1099
IComparer interface, System.Collections, 310 IComponentConnector interface, 1026 IConnectionPointContainer class, 1291 IConnectionPoint, IConnectionPointContainer
class interface, 1307 IContainer member variable, 964 ICustomFormatter interface, 79 ID attribute, 1114
■I N D E X 1349
ID member, System.Web.UI.Control, 1209 Id, ProcessThread type, 568
ID property, System.Web.UI.Control in ASP.NET, 1209
Id, System.Diagnostics.Process, 564 IDataAdapter, System.Data, ADO.NET, 737 IDataParameter, System.Data, ADO.NET, 737 IDataReader, System.Data, ADO.NET, 737 IDbCommand interface, ADO.NET, 738–739 IDbConnection interface, 269–270, 737 IDbConnection object, 852 IDbConnection-comparable object, 843 IDbDataAdapter, IDataAdapter interface,
ADO.NET, 739
IDbDataParameter, IDataParameter interface, ADO.NET, 739
IDbDataReader, IDataReader interface, ADO.NET, 740
IDbTransaction interface, ADO.NET, 738 IdealProcessor, ProcessThread type, 568 identity, private assemblies, 499
IDictionary interface, System.Collections, 310 IDictionaryEnumerator interface,
System.Collections, 310 IDispatch interface, 1298
IDisposable interface, unmanaged resources, 259–261
IDL attributes, 1295
IDL library keyword, 1295 IDL tokens, 1294
IDriverInfo interface, 1300, 1303 IDropTarget interface, 270 IEightBall interface, 885, 897
IEnumerable interface, 101, 310, 321, 453, 458 IEnumerable type, 470
IEnumerable<T> element, 839 IEnumerable<T> interface, 448 IEnumerable<T> object, 458 IEnumerable<T> variable, 453, 457 IEnumerable<T>-compatible object, 464 IEnumerator interface, 101, 310, 384 IEnumVariant class interface, 1307 IErrorInfo, ICreateErrorInfo interface, 1292
IErrorInfo, ISupportErrorInfo class interface, 1307 #if, preprocessor directive, 411–413
if statement, 103 IfElse activity, 921, 945
IHashCodeProvider interface, System.Collections, 310
ilasm utility, 1322
ilasm.exe compiler, common intermediate language (CIL), 617
ilasm/ilasm2 compilers, 1321
ILGenerator, System.Reflection.Emit namespace, 649
IList interface, System.Collections, 310 IList System.Collections interface, 310 Image control, 1056, 1132
com/.apress.http://superindex at faster it Find

1350 ■I N D E X
Image property, 985 Image type, 987 Image widget, 1145
ImageAnimator type, 987 ImageBrush type, 1127 ImageDrawing type, 1130 ImageOrderAutoDialog.cs file, 983
immediate mode graphics systems, 1117 Implements keyword, 1300
implicit cast, 210
implicit keyword, custom type conversion, 398–399, 401–403
implicit typing, 415
implicitly typed local arrays, 419 <Import> subelements, *.xaml files, 1024 in operator, 463, 465
[in] attribute, 1296, 1306
Include attribute, <ApplicationDefinition> element, 1024
Increment( ) method, 607 indexer methods
example, 384
IEnumerator, IEnumerable interfaces, 384 indexer definitions on interface types, 388 indexers with multiple dimensions, 387 indexing objects using string values, 385–386 internal representation of, 387
overloaded, 386 overview, 383
System.Collection.ArrayList, 384 System.Collections.Specialized.ListDictionary,
386
this[ ] syntax, 384 inheritance, 160–161, 185
adding sealed class, 195–196
base keyword in class creation, 192 colon operator, 192
containment/delegation inheritance model, 196
controlling base class creation with MyBase, 192–194
has-a relationship code example, 196 is-a relationship code example, 190, 192 multiple base classes not allowed, 187 NotInheritable keyword, 188
overview, 185–186, 190–192 protected keyword, 194–195
regarding multiple base classes, 187–188 sealed classes, 195–196, 202
specifying parent class, 186–187 inheritance chain, page type in ASP.NET, 1194 Inherits attribute, <%@Page%> directive, 1184
Init event handler, System.Web.UI.Page base class, 1248
Init event, Page type, 1201 InitializeComponent( ) method, 926, 963,
1026–1027, 1029, 1101, 1193 InitialValue property, 1232
innerEllipse object, 1066
InnerException property, System.Exception, 222 InnerText property, 1115
in-place editing example, ASP.NET, 1227–1228 input/output, System.IO
asynchronous I/O, 685–686 BinaryReader, BinaryWriter, 682 BinaryReader, BinaryWriter types, 661 BufferedStream type, 661
Directory, DirectoryInfo types, 661–663 Directory type, 667
DriveInfo class, 668–669 DriveInfo type, 662
File class, 673, 675
File, FileInfo types, 662–663 FileInfo class, 669 FileStream class, 676–677 FileStream type, 662
FileSystemWatcher class, 683, 685 FileSystemWatcher type, 662 MemoryStream type, 662 namespace description, 661 overview, 661
Path type, 662
reading from a text file, 679 Stream class, 675
StreamReader, StreamWriter, 677 StreamWriter, StreamReader types, 662 StringReader, StringWriter, 680 StringWriter, StringReader types, 662 writing to a text file, 679
Insert( ) method, 87, 1259 InsertAuto( ) method, 913 InsertCar( ) method, 912 InsertCommand property, 812 inserting records, ADO.NET, 764 InsertNewCars( ) method, 856
installing .NET 3.5 Framework SDK, 35 InstallSqlState.sql file, 1271 installutil.exe command-line tool, 907 Instancing property, 1300
int data type, 80 int parameter, 95
intArray declaration, 116 Integer data type, 141 Integer parameter, 95 IntelliSense, 201 interface
in arrays, 281
cloneable objects (ICloneable), 295, 297–299 colon operator, 274
comparable objects (IComparable), 299–300 custom, 272–273
custom properties and sort types, 304 deep copy, 299
definition, 269
designing hierarchies, 286–287, 289 determining using as keyword, 277

determining using explicit cast, 276–277 determining using is keyword, 277–278 enumerable types (IEnumerable and
IEnumerator), 289, 291 hierarchies, 286 implementing, 275
invoking objects based on, 276
multiple sort orders (IComparer), 302–303 overview, 269
shallow copy, 295, 297–298
struct, derive from System.ValueType, 274–275 System.Collections interfaces, 309 System.Object base class, 274
types, 432
contrasting to abstract base classes, 270 multiple inheritance with, 287–289 overview, 18
using as a parameter, 278–280 using as a return value, 280–281 Visual Studio 2008, 282
interface keyword, 269 InterfaceNameClash, 283
interfaces and data providers, ADO.NET, 741–742 interfaces, common intermediate language (CIL),
632 [InterfaceType] attribute,
System.Runtime.InteropServices, 1306 Interlocked type, 594, 607
intermediate language (IL), 11 Intermediate Language Disassembler utility
(ildasm.exe), 90, 490 CIL code display, 29 icons, 29
manifest display, 30 overview, 28
type metadata display, 30
International Organization for Standardization (ISO), 1316
Internet Information Services (IIS) default web site, 1165 description, 1164
virtual directories, 878, 1165
Internet Information Services applet, 1165 Internet zone, 692, 1004
interop assemblies, 1285 Interop. prefix, 1287
Interop.SimpleComServer.dll assembly, 1287 Interrupt( ) method, Thread type, 595 Interval property, 1071
into operator, 466
intrinsic types in CTS, VB.NET, C#, C++, 19 Invalidate( ) method, 971, 990, 995 InvalidCastException, boxing and unboxing, 319 Inventory class, 845
inventory content page example, ASP.NET, 1224–1228
Inventory entity class, 846, 856 Inventory type, 844, 850
■I N D E X 1351
<Inventory> element, 862, 1114 Inventory.aspx page, 1224–1225, 1227 Inventory.cs file, 844
InventoryDAL class type, 913 InventoryDAL type, 811 InventoryDALDisLayer class, 811–812, 814 InventoryDataSet class, 826 InventoryDataSet type, 832 InventoryDataSet.Designer.cs file, 828 InventoryDataSet.xsd file, 827 InventoryDataTable class, 828 InventoryRecord type, 912–913 inventoryTable object, 791 inventoryTable variable, 800 InventoryTableAdapter type, 830 Inventory.xml file, 862, 1112, 1114–1115 Invoke( ) method, 1298
InvokeMember( ) method, System.Type class, 529 InvokeWebServiceActivity, WF, 921
invTable object, 846 IP address, 1163 IPointy interface, 275
IPointy-compatible objects, 281 IRenderToMemory interface, 286 is keyword, 211–212, 231, 277–278
is-a relationship code example, 190, 192 IsAbstract, System.Type class, 528 IsAlive method, Thread type, 595 IsArray, System.Type class, 528 IsBackground method, Thread type, 595 IsCancel property, 1069, 1114 IsChecked property, 1070
IsClass, System.Type class, 528 IsClientConnected property, HttpResponse Type,
1198
IsCOMObject, System.Type class, 528 IsDbGenerated property, 848 IsDefault property, 1069, 1114 IsEnum, System.Type class, 528 ISerializable interface, 222 IService1.cs file, 901
IService.cs file, 911
IsGenericParameter, System.Type class, 528 IsGenericTypeDefinition, System.Type class, 528 IsHighlighted property, 1076
IsInitiating property, 887 IsInterface, System.Type class, 528 IsMouseOver trigger, 1158
IsNestedPrivate, System.Type class, 528 IsNestedPublic, System.Type class, 528 IsNull( ) method, 791
IsNullable property, ADO.NET DbParameter, 767 isolated storage
ClickOnce deployment, 707–708 interacting with using storeadm.exe, 701 issue of trust, 687
locating, 700
opening a store using IsolatedStorageFile
com/.apress.http://superindex at faster it Find