Backcolor property, 153
BackColorChanged event signature, 69
Backspace key, 213
Base Edit form, 111–113, 184–186
basic functionality, adding, 95–120
adding finishing touches, 108–110
adding sorting functionality to ListView, 97–100
creating Add/Edit form, 111–119
Base Edit form, 111–113
overview, 111
Region Edit form, 113–119
saving object's changes, 119
deleting objects, 119–120
implementing Find functionality, 96–97
implementing Print functionality, 101–108
New frmListBase constructor, 107–108
overview, 101
Print method, 101–102
printing data, 106–107
PrintPage method, 102–106
overview, 95
BeginUpdate method, 92
bin directory, 95
binary data, 25
binary messages, 48
BinaryFormatterSink class, 48
Binoculars image, 223
BitArray object, 229, 230
[blank] flag, 295
BlinkRate property, 188
BlinkStyle property, 188
BookList class, 418
BookListMgr class, 418–419
Bottom, Left value, 184
BrokenRule (Event) method, 274
BrokenRules class, 171–174
BrokenRules method, 256
BrokenRules object, 435
Build Action property, 232, 553
building and deploying application, 94–95
business logic
misplacement in presentation layer, 8
in n-tier architecture, 6, 7, 10, 12
user-centric, 9
business logic layer, 7–9
business objects, building, 159–193
adding business rules to data-centric objects, 166–171
adding business rules to user-centric objects, 171–180
implementing BrokenRules class, 173–174
returning business rules to user interface, 179
trapping business rule violations, 175–179
using BrokenRules class, 171–173
business rule types, 159–160
creating BusinessErrors class, 165–166
creating Error classes, 164–165
creating first rule, 161
displaying business rules to user, 180–186
handling edit cancellations, 191–192
.NET Exception classes, 161–163
overview, 159
reporting business rule violations, 160–161
responding to object changes in user interface, 186–191
business rule attributes, data-centric, 427
business rules
See also server-side business rules
adding to data-centric objects, 166–171
adding to user-centric objects, 171–180
adding to user-centric objects
BrokenRules class, 171–174
returning business rules to user interface, 179
trapping business rule violations, 175–179
checking with custom attributes, 432–435
creating, 161
definition of, 160
determining, 314–316
displaying to user, 180–186
implementing using custom attributes, 420–437
assigning data-centric business rule attributes, 427
checking business rules with custom attributes, 432–435
creating BusinessRules project, 420–421
creating DisplayNameAttribute class, 424
creating ITest interface, 421–422
creating MaxLengthAttribute class, 426
creating NotEmptyAttribute class, 425
creating NotNullAttribute class, 422–424
implementing user-centric business rule attribute classes, 435–437
overview, 420
retrieving list of business rules, 427–432
importance of, 308
reporting violations, 160–161
retrieving list of, 427–432
trapping violations, 175–179
types of, 159–160
Business Rules value, 182
BusinessBase class
consolidating code, 276–277
IsDirty method of, 366
Validate method of, 436, 437
ValidateAndThrow method of, 436, 437
BusinessEntityCollection, 476
BusinessError method, 433
BusinessErrors class, 165–166, 169, 427
BusinessInfo object, 480
BusinessKeys, 480
BusinessRules project, creating, 420–421
button object, Click event of, 69
ByRef variable, 52, 115, 169, 268, 371, 386
ByVal variable, 52, 268