Beginning Visual Basic 2005 Express Edition - From Novice To Professional (2006)
.pdf500 C H A P T E R 1 9 ■ W H E R E T O N O W ?
Figure 19-3. The Express products home page
By the way, notice on the left-hand navigation bar in Figure 19-3 that there’s a Coding4Fun link. This is a great link for finding some neat snippets of code, articles, and challenges to improve your coding skills, and it’s a wonderful resource for new developers.
You can find the starter kits simply by pointing at the product of your choice (our choice will naturally be Visual Basic ) and then choosing Starter Kits from the menu that appears. As soon as you click the mouse, you’ll be whizzed off to the Starter Kits page shown in Figure 19-4.
C H A P T E R 1 9 ■ W H E R E T O N O W ? |
501 |
Figure 19-4. The Starter Kits page for Visual Basic 2005 Express
At the time of this writing, five starter kits are available for VB Express: the two that ship with the product, the Black Jack Card Game starter kit, the Skype Wrapper (which lets you build Voice over IP functionality into your applications), and an interface for the LEGO Mindstorms kits. Microsoft is promising more in the future, so keep a regular eye on this page.
The page does have links to download each of the starter kits, along with instructions on how to install them onto your machine. As I mentioned at the start, each kit comes with full instructions detailing not only what it does but also how to customize it, so why not dive in and have fun.
502 C H A P T E R 1 9 ■ W H E R E T O N O W ?
The Other Express Tools
Visiting the Express products home page in the preceding section brings us nicely onto the other Express products: SQL Server Express, Visual C++ Express, Visual J# Express, Visual C# Express, and Visual Web Developer Express.
If by now you are a die-hard Visual Basic 2005 fan, you may be wondering why I’m even bothering to mention the others. Well, two of them in particular should still be of interest to you. As you saw in Chapter 16, Visual Basic 2005 Express ships with SQL Server Express, so it’s useful to know where that product lives should you want to explore SQL Server and databases in more detail.
Far more interesting, though, is Visual Web Developer Express. Of all the Express products, Visual Web Developer is the only one that supports more than one programming language (C# and Visual Basic). This tool is designed to let you build functional web-based applications with .NET, so now that you have cut your teeth on Visual Basic and Windows programming, Visual Web Developer Express is definitely the next tool that you should take a look at to turn your burgeoning Visual Basic coding skills toward the world of online application development.
Like Visual Basic 2005 Express, Visual Web Developer Express is a free download.
MSDN
All the Express products live within a section of Microsoft’s website known as the Microsoft Developer Network (MSDN). This place should become your home away from home. The home page for MSDN is http://msdn.microsoft.com, and it’s updated daily with new articles, video clips, code samples, and much more for .NET developers of all levels. You can access the full .NET Framework reference on the site; search for articles, code, and reference material on pretty much anything to do with programming; and even get involved in the community newsgroups and forums that Microsoft runs.
Now, I can’t recommend these things highly enough. When I want to learn a new language fast, I turn to the forums. You’ll find people there asking questions about almost everything that can be done with the language and tools, and you can use those questions either to guide your own study (I try to answer every unanswered question myself to further my own knowledge) or as a reference to find out the sorts of things that you can do. The MSDN community page can be found at http://msdn.microsoft.com/community/.
C H A P T E R 1 9 ■ W H E R E T O N O W ? |
503 |
Blogs
Today, more and more people are getting involved in publishing blogs. In case you’ve never come across them before, a blog (it’s short for web log) is an online journal in which people can write pretty much anything they want. There are blogs that cover people’s daily lives, blogs targeted at products, and of course thousands of them targeted at programming and .NET.
You can read blogs just by visiting each one’s web page, but a much better way to do things is to download a tool such as RSS Bandit. You see, blogs have things called feeds associated with them, and RSS Bandit can keep track of those feeds and automatically download new articles as they get posted. What’s best is that RSS Bandit is actually written in .NET and grew out of a series of articles talking about how to develop such an application on MSDN. You can download RSS Bandit from its homepage at http://www.rssbandit.org.
As for the blogs themselves, you’ll find a great selection at the Apress Ablog site at http://blogs.apress.com/ (see Figure 19-5).
n
Figure 19-5. The Ablog site, home to the blogs of Apress authors and staff
504 C H A P T E R 1 9 ■ W H E R E T O N O W ?
The cool thing about blogs is that most blog authors also link to other people’s blogs, so after you start reading one or two, you’ll find links you’ll want to follow even more. It then becomes even more important that you use a tool like RSS Bandit to keep track of everything.
There are also a ton of blogs listed at http://msdn.microsoft.com/blogs. These are blogs written by people employed by or very close to Microsoft. It’s the word from the horse’s mouth as far as .NET technical information is concerned.
I have a blog on the Ablog site, and I also have another less .NET-focused one at http://peterwright.blogspot.com.
Summary
I hope you’ve had fun working through this book. It was a lot of fun writing it. In this chapter I wanted to give you some pointers to online resources that can help you with the next step in your journey: creating your own applications.
Starter kits are a great stepping-stone to bigger things, giving you a working framework that you can tweak and play around with, but also giving you a full set of working code that you can explore and learn from. In addition, there are some great articles available on MSDN and through the world’s newest publishing phenomenon, blogs.
Above all else, though, remember that you aren’t alone. The community forums are there to serve not only as a reference but also as an interactive help line. Don’t be afraid to post questions to the forums when you get stuck and you’ll soon be on your way again.
Good luck, and be sure to drop me a line and let me know how you’re doing.
Index
■Special Characters
| (Boolean OR) operator, 362
+(plus symbol), 6
+sign, 71
+= operator, 68
<> (angle brackets), 331
<character, 461
<? tag, 388 = symbol, 81
== operator, 84
■A
abstract methods and classes, 134–136, 138 AcceptButton property, 253 AcceptChanges( ) method, 436
Activated event, 238
ActiveMdiChild property, 308
Add( ) method, 106, 282, 332, 347
Add New Item dialog box, 424
Add New Stored Procedure, 429
Add Web Reference, 476
AddBooksToListBox( ) method, 467, 470–471 AddEmployeeRow( ) method, 438 AddHandler, 325–326
Advanced Binding dialog box, 446 Advanced Options button, 440 Adventure Works data source, 443 Adventure Works database, 418
AdventureWorks_DataDataSet
namespace, 431
AdventureWorks_DataDataSetTableAdapters
namespace, 430
AdventureWorksDB.msi file, 416 aligning controls, 176–178
Allow Nulls check box, 427 AllowAddNew property, 444 Anchor property, 29, 191 anchors, 8
angle brackets ( < >), 331
AnnualBoldedDates property, MonthCalendar control, 222
app.config file, 420 Application class, 234 ApplicationException, 169 arrays, 77–80
AsyncCompletedEventArgs event, 466 attributes, 169, 383
■B
Back button, 32
BackColor property, 190, 222, 307 background color, 300 BackgroundWorker control, 485–495 BackgroundWorker DoEvents handler, 492 backgroundWorker1, 488
BackgroundWorker.DoWork event handler, 489
BeginEdit( ) method, 435 BindingContextChanged event, 238 BindingSource control, 443 BlogPosts table, 428
blogs, 503–504
BoldedDates property, MonthCalendar control, 222, 225
Book class, 460
Books button, 458
Boolean data type, 73
Boolean OR (|) operator, 362
505
506■I N D E X
Boolean properties, 285 Boolean values, 73, 83 boxing, 156
bubbling exceptions, 165 Button control, 177, 192, 457 button1 member, 175
buttons, in Windows applications, 192–197
■C
C# counterparts, 2 C++ .NET, 2
calc object, 109 calcButton_click event, 493
Calculate button, 104, 109, 487, 492 Calculator class, 106, 108, 110 Calculator.vb class, 105 CancelAsync( ) method, 466, 494 CancelButton property, 253 CancelEdit( ) method, 435 CancelEventArgs object, 207 CancellationPending flag, 495 CancellationPending property, 492 capital letters, 145
Case statements, 86 casting types
checking object types, 154–155 overview, 150–151
reference types and value types, 153–155 CausesValidation property, Text Box, 198 changesList list box, 363
<channel> tags, 391 Char keyword, 73
characters and text, 73–74
check boxes, in Windows applications, 215–221
CheckBox, Microsoft Word, 215
Checked property, 217, 220
CheckedChanged event, 217
CheckedChanged property, 220
CheckedIndices property, 279
CheckedItems property, 279 CheckedListBox control, 261, 278–279 CheckOnClick property, 279
child window, 308 ChildForm object, 308
ChildNodes collection, 384, 387 ChildNodes property, XmlDocument, 387 chooseButton button, 363
class members, 125 class methods, 114 classes, 46
abstract, 134–138 creating and using, 47–50 partial, 147–149
classes and objects creating classes, 94, 96 overview, 94
using constructors and destructors, 103 using constructors and finalizers, 96–103
CleanUp method, 103
Clear( ) method, 332
Click event, 467
Click event code, 203
Click event handler, 196, 289
Click event, .NET, 191
Close( ) method, 229, 411
Close icon, 6, 236
code snippets, 182 Code window, 15 Color property, 256 Colors menu, 301 Column Properties, 427
ComboBox control, 279–281
Common Code Patterns category, 24, 183 CompareEmployees( ) function, 345 CompareTo( ) function, 345 concatenating text, 71
conditional operators, 81 conditional statements, 57–61
ConnectToSpeaker( ) method, 125 console application, 19, 90, 390 Console class, 21, 50, 102 constructors, 52, 96–103
Contains( ) method, 74, 333–336, 354 ContainsKey( ) method, 292, 348, 356 ContainsValue( ) method, 348 context menu control, 311–312 ContextMenuStrip control, 295, 311 ContextmenuStrip property, 312 control structures, 57
ControlBox property, 236 controls, aligning, 176–178 ConversionRate( ) method, 479 Copy( ) method, 367
Create( ) method, 379, 401, 408
CreateDirectory( ) method, 367
CType, 72
CurrencyConvertor, 479
Current.Value property, XPathNodeIterator, 397
cursor based, 400
custom exceptions, 168–169 Customer tags, 409
■D
data adapters, 422, 430
Data Source Configuration Wizard, 416, 424 DataAdapter class, 422, 433
Database Explorer window, 15, 425 database programming
data binding overview, 442–448 database creation tools, 424–429 overview, 415–416
tools overview, 416–424 writing database code, 429–442
DatabaseStuff class, 125 DataGridView control, 175, 422, 424 DataMember property, 443 DataSet container, 421
■I N D E X 507
DataSource property, 443 |
|
|
DataTable object, 422 |
|
|
date pickers, in Windows applications, 221–226 |
|
|
Date variable, 88 |
|
|
DateChanged event, MonthCalendar |
|
|
control, 223 |
|
|
DateRangeEventArgs object, MonthCalendar |
|
|
control, 225 |
|
|
DateSelected event, MonthCalendar |
|
|
control, 223 |
|
|
DateTime objects, 226 |
|
|
DateTimePicker control, 221, 223, 446 |
|
|
Deactivate event, 238 |
|
|
deadlocks, 495–496 |
Find |
|
decimal variables, 72 |
||
Decrypt( ) method, 368 |
it |
|
at faster |
||
delegate class, EventHandler type, 320 |
||
delegates, 320–326 |
||
Delete( ) method, 435 |
com.apress.http://superindex |
|
|
||
Department property, 338 |
|
|
Depth32Bit, 288 |
|
|
dequeuing, 357 |
|
|
Description element, 398 |
|
|
Designer window, 15 |
|
|
destructors, 103 |
|
|
DialogResult properties, 254, 269 |
|
|
dialogs |
|
|
common, 255–257 |
|
|
creating own dialog box, 251–255 |
|
|
using simple message box, 248–250 |
|
|
dictionaries, 346–356 |
|
|
Dictionary collection, |
|
|
System.Collections.Generics |
|
|
namespace, 331 |
|
|
Dim keyword, 49 |
|
|
Director object, 150 |
|
|
Directory class, 366 |
|
|
DirectoryInfo class, 366 |
|
|
Divide button, Windows GUI, 158 |
|
|
divisorBox, 68 |
|
|
|
|
508■I N D E X
Dock in Parent Container, 423 Dock property, 10
Document Outline window, 15 DocumentCompleted event, 453 Double class, 108
double parameters, 106 double variables, 72, 158 DoubleClick event, 462
Double.Parse( ), Windows GUI, 158 Do.Until loops, 61 DownloadComplete( ) method, 470
DownloadData( ) method, System.Net.WebClient, 465
DownloadDataAsync( ) method, WebClient object, 465
DownloadDataCompleted event, 466
DownloadDataCompletedEventArgs subclass, AsyncCompletedEventArgs, 466
DownloadFile( ) method, System.Net.WebClient, 465
DownloadFileAsync( ) method, 466 DownloadFileCompleted event, 466 downloadProgress progress bar, 470 DownloadProgressChanged( ) method, 466
DownloadString( ) method, WebClient class, 459, 463, 465, 469
DownloadStringAsync( ) method, 466, 469 DownloadStringCompleted event, 466
DownloadStringCompletedEventArgs class, 466, 471
DoWork event, 492 Draw( ) method, 135 Drive( ) methods, 128
DriveOffRoad( ) method, 131 drop-down button, 195 DropDown style, 281 DropDownButton, tool strip, 313 DropDownOpened event, 309 DropDownOpening event, 309
DropDownStyle property, 105, 280 dropping controls, 176
■E
Edit Colors, 301 editors, 16–26 elements, 383 ellipsis button (.), 262 Employee class, 333
Employee class , HelloFunctionDelegate delegate, 321–322
EmployeeAddress tables, 429 EmployeeDataTable( ) method, 431 EmployeeID property, 432 EmployeeName property, 338 _employeeNumber property, 338 EmployeeRow object, 434 employees object, 434 employeeTableAdapter, 424
Enabled properties, ToolTip control, 212 Enabled property, 482 EnableRaisingEvents property, 361, 364 Encrypt( ) method, 368
End Sub method, 21 EndEdit( ) method, 435 EndsWith( ) method, 74 endTime variable, Date, 88 e.Node, 292
enqueuing, 357
Enter event, Text Box, 198
Equals( ) method, 84, 354
Error List window, 15
ErrorProvider control, .NET, 213 Evaluate( ) method, 395
Even node, 289
Even Numbers node, 290 evenNumbersTimer, 483 event handlers, 189 event parameter, 453
EventArgs parameter, 197 EventHandler type, 319 events, 31, 188
custom, creating, 319–321 hooking by hand, 315–318
in Windows applications, 190–192 Events button, 452
Exception class, .NET Framework, 167 Exception object, 167, 466
exceptions custom, 168–169 handling
bubbling exceptions, 165 overview, 161–164
throwing exceptions, 165–168 overview, 157–161
Execute Query button, 440
Exists( ) method, 340, 367
eXtensible Markup Language. See XML
■F
factory method, 401 feeds, 503
fields, 114
File and Directory classes, 366–370 File class, 366, 374
File menu, 12
file streams, 372–378 FileInfo class, 366–367
FileMode.Append value, FileMode enumeration, 372
FileMode.Create value, FileMode enumeration, 372
FileMode.CreateNew value, FileMode enumeration, 372
FileMode.Open value, FileMode enumeration, 372
FileMode.OpenOrCreate value, FileMode enumeration, 373
FileMode.Truncate value, FileMode enumeration, 373
■I N D E X 509
FileName property, 256 |
|
|
File.ReadAllLines( ) method, 369, 373, 376 |
|
|
files |
|
|
File and Directory classes, 366–370 |
|
|
FileSystemWatcher class, 360–366 |
|
|
overview, 360 |
|
|
FileSystemWatcher class, 360–366 |
|
|
Fill( ) method, 422, 432 |
|
|
Filter property, 256, 361 |
|
|
finalizers, 96–103 |
|
|
Find( ) method, 289, 292, 336 |
|
|
Find( ) methods, Lists and SortedLists, |
|
|
336–338, 340, 342–343 |
Find |
|
Find Results window, 16 |
||
|
||
FindAnEmployee( ) function, 339 |
it |
|
function, 336 |
||
faster |
||
FindEmployeeByNamePredicate( ) |
|
|
FindStaffInDepartment( ) method, 339 |
at |
|
com.apress.http://superindex |
||
FinishUp method, 103 |
||
|
||
FireEmployee( ) method, HRActionDelegate |
|
|
delegate, 324 |
|
|
FirstDayOfWeek property, MonthCalendar |
|
|
control, 222 |
|
|
floating point, 66 |
|
|
Flush( ) method, 375, 411 |
|
|
FolderBrowserDialog, FileSystemWatcher, |
|
|
363 |
|
|
folderDialog folder browser, 363 |
|
|
folderLabel label, 363 |
|
|
Font property, 191, 256 |
|
|
for loop, 61, 90–91, 487 |
|
|
ForEach command, 79 |
|
|
ForEach loop, 80 |
|
|
foreach loop, 367 |
|
|
ForeColor property, 190, 222 |
|
|
_forename member, 121 |
|
|
forename value, 119 |
|
|
form editor, 13 |
|
|
Format( ) command, String class, 200 |
|
|
FormatException exceptions, 163 |
|