datapagingwith Web grids, 168 “169 
     data types 
  in C# and Visual Basic .NET, 339 
  in Visual Basic .NET, 365 “366 
     DataAdapters 
  using with Access databases, 129 
  using with databases, 130 
  viewing data coming back from, 141 
     database information, exposing with Web 
      databases. 
   See also  developer secrets for databases 
  accessing, 126 
  essentials of, 126 “130 
     DataGrids 
  adding dropdown boxes to, 162 
  clicking anywhere and selecting with, 156 “157 
  color -coding with, 151 “152 
  versus DataSets, 146 
  displaying selected columns in, 142 
  example of, 140 
  exporting to Excel, 171 “173 
  formatting data in, 150 
  personalizing, 163 “165 
  sorting with, 169 “171 
  in Windows forms, 362 
     DataLists versus DataGrids, 168 
     DataSets 
  coding for use with Web services, 181 “183 
  versus DataGrids, 146 
  returning from Excel spreadsheets, 173 “175 
  using XML with, 288 “289 
     DataSets versus Recordsets, 136 
     dates 
  calculating years between, 260 “261 
  checking for, 252 
  formatting in Web grids, 149 “151 
     days, adding and subtracting, 257 
     days in months, finding number of, 256 “257 
     debugging in ASP.NET, 109 “110 
     developer secrets for ASP.NET, 89 “90. 
   See also  applications; 
  ASP.NET; 
  Web applications; 
  Windows applications ASP.NET Forums, 105 
  authentication in five steps, 100 “102 
  c:\inetpub\ wwwroot \ directory alternatives, 107 “108 
  caching applications to increase speed, 108 “109 
  changing page titles in code, 85 
  checking uptime in .NET, 117 “118 
  creating default Enter buttons , 77 
  creating images dynamically, 96 “97 
  creating scrollable micro windows, 83 
  creating user -friendly URLs, 88 “89 
  debugging in nine steps, 109 “110 
  displaying Web warning messages, 73 “77 
  filling out email fields automatically, 85 
  Forms authentication without Web.config, 102 
  hiding error code from clients , 111 
  integrating with PayPal s instant payment notification, 106 
  .IsClientConnected used for long processes, 114 “115 
  learning CSS (cascading style sheets), 84 
  moving list items up and down, 81 “82 
  moving Web servers, 121 “122 
  Panel control usage, 79 “80 
  preventing client caching with meta tags, 115 
  resizing in Web applications, 82 
  sending mail, 87 
  Server.Transfer versus Response.Direct in, 113 “114 
  Session End event troubleshooting, 116 
  SmartNavigation property, 78 
  stopping users from right-clicking, 82 
  storing files with ASP.NET hosts , 122 “123 
  storing settings, 104 
  storing uploaded files in databases, 92 “94 
  stress testing Web applications, 119 “121 
  subfolders in Web applications, 106 
  thumbnail generation on the fly, 98 “99 
  uploading files, 90 “92 
  uploading files larger than 4MB, 115 
  user controls, 78 “79 
  user interface, 71 “84 
  validation-controls five-step checklist, 71 “73 
  working with uploaded images, 95 “96 
     developer secrets for databases. 
   See also  databases 
  cheating with SQL, 134 “135 
  checking SQL Server availability, 137 “138 
  clicking anywhere and selecting with Web grids, 156 “157 
  color-coding Web grids, 151 “152 
  confirming Web deletes, 153 “154 
  creating editable Web grids, 141 “147 
  creating editable Windows grids, 138 “140 
  data paging with Web grids, 168 “169 
  exporting Web grids to Excel, 171 “173 
  finding last identity number added, 133 “134 
  formatting Web-grid data, 149 “151 
  generating GUIDs quickly, 131 “132 
  getting Microsoft to write your code, 175 “176 
  making connection string creators , 132 “133 
  personalizing Web data binding, 163 “165 
  returning DataSets from Excel spreadsheets, 173 “175 
  returning multiple tables into DataSets, 136 “137 
  selecting Web-form grid items with Hotmail, 154 “156 
  sorting with Web grids, 169 “171 
  using dropdown boxes in Web grids, 158 “166 
  using HTML in Web grids, 147 “148 
  using hyperlinks in Web grids, 148 “149 
     developer secrets for .NET 
  adding and subtracting days, months, and years, 257 
  adding gradient backdrops, 277 “278 
  adding Web shortcuts to Favorites menu, 234 “235 
  binding combo boxes to enumeration values, 269 “270 
  calculating next working day, 258 
  calculating years between dates, 260 “261 
  checking for dates, 252 “253 
  checking for identical files, 239 “240 
  checking for leap years, 258 “259 
  checking for whole numbers , 252 
  COM+ transactions, 292 “296 
  converting between graphic formats, 272 
  converting HTML to text, 231 “232 
  converting strings into color types, 268 
  converting strings to proper case, 261 “262 
  creating Web browsers, 225 “226 
  dates, numbers, and strings, 251 “270 
  designing icons, 270 “271 
  determining availability of Internet connections, 236 “237 
  distributed computing, 283 “301 
  drawing with Windows forms, 274 “276 
  encryption in twelve lines of code, 265 “266 
  figuring out quarter dates, 259 “260 
  finding number of days in months, 256 “257 
  functions for reading and writing files, 237 “238 
  generating passwords, 263 “264 
  graphics and fonts, 270 “279 
  implementing MD5 encryption, 266 “268 
  manipulating files, 238 “239 
  manipulating files and folders, 237 “251 
  MSMQ (Microsoft Message Queue) guide, 297 “300 
  .NET replacement for App. Path property, 248 
  parsing Web pages for links and images, 229 “231 
  posting data to Web, 232 “234 
  putting messages in event logs, 281 “282 
  retrieving drive serial numbers, 247 “248 
  retrieving IP addresses, 235 “236 
  retrieving paths to default programs, 246 “247 
  retrieving special folder paths, 245 
  rotating and flipping images, 273 
  snatching HTML from Web pages, 227 
  snatching HTML with timeouts, 227 “229 
  starting screensavers, 278 “279 
  storing text snippets on Clipboard, 262 
  temporary-file management, 241 
  translating bytes to strings, 244 “245 
  using INI files, 248 “251 
  using ordinal numbers in applications, 253 “255 
  using random numbers, 255 “256 
  using registry and event logs, 279 “282 
  Visual Studio tips, 302 “307 
  watching directories for changes, 243 “244 
  Web services versus remoting, 300 “301 
  working with directories, 242 
  working with fonts, 271 
  working with the Internet, 225 “237 
  XML cheat s guide, 283 “291 
     developer secrets for Web services. 
   See also  Web services 
  adding Google to search programs, 187 “189 
  caching to improve performance, 185 
  changing URLs without recompiling, 199 
  exposing database information 
  quickly and easily, 181 “183 
  finding best Web services, 199 “200 
  performing asynchronous access, 197 “198 
  performing online language translations, 185 “186 
  preparing to publicize Web services, 184 “185 
  querying Amazon.com, 190 “193 
  troubleshooting "connection closed" errors, 198 
  using TerraServer Web service, 193 “196 
     developer secrets for Windows forms applications. 
   See also  forms; 
  Windows forms 
  adding autocomplete to combo boxes, 34 “36 
  browsing performance counters, 57 “58 
  capturing screens, 40 “41 
  changing tab order, 33 
  checking for previous instances, 44 “45 
  converting RTF to HTML, 45 “48 
  creating navigation bars, 41 “42 
  creating number-only text box, 32 
  creating ultra -thin clients, 60 “62 
  customizing MonthCalendar control, 31 
  determining user clicks in dialog boxes, 50 “51 
  displaying animated GIFs without 
  browser control, 32 “33 
  drag and drop from Windows Explorer, 48 “50 
  examining current environment, 57 
  highlighting errors with ErrorProvider control, 29 “30 
  learning LinkLabel control, 30 
  making forms transparent, 27 
  printing from applications, 51 “54 
  protecting code with obfuscation, 59 “60 
  replacing ToolTips, 27 
  resetting forms, 37 “38 
  resizing Windows forms, 28 
  snapping cursors to buttons, 39 
  splitting panels, 28 “29 
  using command-line parameters, 37 
  using .PrintForm method, 54 “56 
  visual inheritance facts, 56 
  Windows XP themes, 42 “44 
  working with system tray, 33 
     developer TODO lists, writing in Visual Studio, 302 
     Device properties for MIT, list of, 212 “213 
     DeviceSpecific component of Mobile Web applications, purpose of, 211 
     dialog-box display, passing response to code responsible for, 50 “51 
     directories 
  watching for changes, 243 “244 
  working with, 242 
     distributed computing, explanation of, 1 
     Distributed Transaction Coordinator, accessing, 296 
     div tags, using with scrollable micro windows, 83 
     Dock property, use of, 28 
     domains, checking validity with Regex, 322 
     DOS-style console applications, creating, 206 “208 
     Dotfuscator, Web address for, 60 
     drag and drop from Windows Explorer, 48 “50 
     drive serial numbers, retrieving, 247 “248 
     dropdown boxes, using in Web grids, 158 “166