Introduction Recipe 14.1. Preventing Multiple Instances of a Running Application Recipe 14.2. Creating a Simple User Control Recipe 14.3. Describing User Control Properties Recipe 14.4. Starting Other Applications by EXE, Document, or URL Recipe 14.5. Waiting for Applications to Finish Recipe 14.6. List All Running Processes Recipe 14.7. Terminating a Running Process Recipe 14.8. Pausing Execution of a Program Recipe 14.9. Control Applications by Simulating Keystrokes Recipe 14.10. Watching for File and Directory Changes Recipe 14.11. Creating an Icon in the System Tray Recipe 14.12. Accessing the Clipboard Recipe 14.13. Adding Tooltips to Controls Recipe 14.14. Dragging and Dropping Files to a ListBox Recipe 14.15. Dragging and Dropping Between ListBox Controls Recipe 14.16. Disposing of Objects Appropriately Recipe 14.17. Fine-Tuning Garbage Collection Recipe 14.18. Moving the (Mouse) Cursor Recipe 14.19. Intercepting All Key Presses on a Form Recipe 14.20. Accessing the Registry Recipe 14.21. Running Procedures in Threads Recipe 14.22. Reading XML into a TreeView Recipe 14.23. Creating an XML Document Recipe 14.24. Validating an XML Document Recipe 14.25. Using Generic Collections Recipe 14.26. Creating a Screensaver Recipe 14.27. Localizing the Controls on a Form Recipe 14.28. Adding Pop-up Help to Controls Recipe 14.29. Maintaining User-Specific Settings Between Uses of an Application Recipe 14.30. Verifying a Credit Card Number Recipe 14.31. Capturing a Console Application's Output Recipe 14.32. Reading an Assembly's Details Recipe 14.33. Performing Serial I/O Recipe 14.34. Rebooting the System |