Kamis, 02 April 2009

FolderBrowserDialog - The Folder Browser Component Unmasked

Basic Usage
To display a folder explorer UI to the user, a FolderBrowserDialog instance is created and the ShowDialog method is called. This shows the modal dialog containing the folder browser control (tree) and an OK and Cancel button. If the user selects a folder and clicks the OK button, the ShowDialog method returns DialogResult.OK and the SelectedPath property contains the full path of the selected folder. If the user clicks the Cancel button, the ShowDialog method returns DialogResult.Cancel.

Advanced Usage
The FolderBrowserDialog has some additional features such as limiting the view of the file system that is displayed to the user, pre-selecting a folder when the dialog is first displayed and displaying a button to allow the user to create a new folder.

The RootFolder property can be set to the full path of the folder which is to be displayed as the root of the tree control of the folder browser component. For example, if this property is set to Environment.SpecialFolder.Personal, only folders from the 'My Documents' are displayed in the tree, so the user can only select 'My Documents' or its sub-folders.

Prior to displaying the folder browser control, the SelectedPath property can be set to the full path of a folder causing that folder to be pre-selected in the folder browser tree. For example, when this property is set to "c:", the node corresponding to the c: drive is pre-selected in the tree when the dialog is first displayed.

If the ShowNewFolderButton property is set to true, then, in addition to the folder browser tree control, and the OK and Cancel buttons, the folder browser dialog also displays an additional 'New Folder' button which when clicked, creates a new folder under the currently selected folder.

Limitations
While the folder browser component is a handy way to allow the users to browse and select folders, it suffers from many limitations, some of them preventing the component from being of practical use in applications.

Modal Functionality
The most visible drawback of the folder browser component is that it displays its UI in the form of a modal dialog. When shown, it blocks the rest of the application until the user has chosen a folder. As long as the dialog is displayed, no input (keyboard or mouse click) can occur except within the dialog box. The user must click the OK or Cancel button before input to the calling program can occur.

This is a very annoying and limiting feature of the FolderBrowserDialog. Users are very likely to be irritated and annoyed when they have to interact with a modal dialog every time they have to explore and select a folder. A non-modal UI control which can be put inside of one of the applications's own forms or dialogs is a much more user-friendly way of displaying the same UI.

No Virtual (Non-file system) folders
The FolderBrowserDialog does not allow the user to select virtual (Non-file system) folders such as the Control Panel or My Computer. It only allows the user to select a file system path such as "c:" or "c:windows".

No Files
The component does not allow the user to select files. This is a major drawback since there are many circumstances where the user may need to select a file while still using the tree UI to browse to that file.

Limited Choice of RootFolder
The root folder of the folder browser control can be only set to one of the 'special folders' defined by Windows such as the 'My Documents' or 'My Computer'. This is a major limitation since this means you cannot set the root folder to a path such as the "d:" drive.

No Check Boxes
The folder explorer tree in the FolderBrowserDialog cannot show check boxes next to nodes. Ability to show multi-state check boxes can be a very handle feature for such a control.

No Filtering
The FolderBrowserDialog has no support for filtering. For example, it is not possible to display only network folders or only shared folders or only folders starting with the string "Documents" or files having a particular extension.

No Custom Controls
When using the FolderBrowserDialog, you are only limited to the actual folder explorer tree control, the OK, Cancel and New Folder buttons and the description label. It is not possible to add custom controls to the dialog box. This can be useful in many circumstances such as when you want to show a thumbnail/preview of the selected file/folder or any kind of additional information.

No Appearance Control
The appearance of the FolderBrowserDialog and its constituent controls cannot be changed. Neither can attributes of individual folders show in the folder explorer control be changed. For example, it is not possible to change the background color of the tree control or to set the font and color of individual
nodes/folders in the tree.

No Custom items
The FolderBrowserDialog cannot display external/custom items in the folder explorer tree. For example, it may be necessary to display items from an FTP location in addition to the file system items. This is not possible with the FolderBrowserDialog.

No Lockdown
The FolderBrowserDialog allows unhindered operations on folders. The user can rename folders, do drag-drop operations and display the context menu and invoke various operations. In many cases, it may be necessary to limit or altogether prevent such potentially dangerous and irreversible operations, however the FolderBrowserDialog provides no way of doing that.

Beyond The FolderBrowserDialog : The FolderView Control
The FolderView Control brings a Windows Explorer like folder browser component to your applications complete with AutoUpdate, dragdrop, icons, contextmenus, Non-file system items, default key-handling, infotips and renaming. It features powerful behavior control and customization functionality that takes it miles ahead of Windows Explorer by adding features like filtering, checkboxes, custom items, multiple root nodes, dragdrop control and customization of default contextmenus,
displaynames, icons and infotips.

The FolderView control is a UI control which can be dropped right inside your own forms and dialogs. A
non-modal file & folder browsing/selection experience right inside your own dialogs and forms is something that users will appreciate and find intuitive and simple.

Additionally, FolderView overcomes all the limitations of the FolderBrowserDialog and provides far greater and advanced features and functionality than the FolderBrowserDialog. The following table is a quick comparison of the FolderView Control with the FolderBrowserDialog.

Drop-In Windows Explorer like folder browser functionality. FolderView Control : Yes
FolderBrowserDialog : Modal UI. The component cannot be dropped in your own form.

  • Complete Windows Explorer functionality include a file/folder browsing listview (similar to Windows Explorer's right-side) and a drive selection control (similar to Windows Explorer's address bar) FolderView Control : Yes. As part of Shell MegaPack FolderBrowserDialog : No
  • Ability to select virtual (Non-file system) folders FolderView Control : Yes FolderBrowserDialog : No
  • Ability to specify any and all folders as root. FolderView Control : Yes FolderBrowserDialog : No
  • Ability to show files as well as folders. FolderView Control : Yes FolderBrowserDialog : No
  • Multi-state check boxes FolderView Control : Yes FolderBrowserDialog : No
  • Filtering capabilities FolderView Control : Yes FolderBrowserDialog : No
  • Custom controls FolderView Control : Yes FolderBrowserDialog : No
  • Appearance Control FolderView Control : Colors and appearance of the control as a whole and of individual folders/files can be changed. FolderBrowserDialog : No
  • Custom Items FolderView Control : Yes FolderBrowserDialog : No
  • Prevent renaming, drag-drop, context menus FolderView Control : Yes. For all folders or on a per-folder basis. FolderBrowserDialog : No
  • Multiple root folders FolderView Control : Yes FolderBrowserDialog : No
  • Change default display names, icons, overlay icons, infotip, etc FolderView Control : Yes FolderBrowserDialog : No
  • Simply and easy to use API FolderView Control : Yes Clumsy, inflexible API
  • Access complete information of a file/folder including its displayname, fullpath, checkstate, selection state and attributes like whether it is a shortcut, shared, hidden, readonly, file and folder FolderView Control : Yes FolderBrowserDialog : No
  • Prevent display of contextmenus for all folders using a simple property or on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Prevent dragdrop for all folders using a simple property or on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Allow/disallow renaming for all folders using a simple property or on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Allow/disallow selection for all folders using a simple property or on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Allow/disallow expanding/collapsing on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Change default drag actions during dragdrop (e.g. from Copy To Move) FolderView Control : Yes FolderBrowserDialog : No
  • Control checking/unchecking on a per-folder basis. FolderView Control : Yes FolderBrowserDialog : No
  • Prevent execution of default shell commands ( e.g. Open, Cut, Properties, etc. in response to keystrokes or through the context menu) for all folders using a simple property or on a per-folder basis using an event. FolderView Control : Yes FolderBrowserDialog : No
  • Show/hide hidden folders using a simple property. FolderView Control : Yes FolderBrowserDialog : No
  • Show/hide virtual folders ( e.g. Control Panel ) using a simple property. FolderView Control : Yes FolderBrowserDialog : No
  • Enumerate all folders shown in FolderView. FolderView Control : Yes FolderBrowserDialog : No
  • Enumerate all folders according to folder hierarchy structure. FolderView Control : Yes FolderBrowserDialog : No
  • Execute shell commands ( e.g. Cut, Delete, etc ) on folders. FolderView Control : Yes FolderBrowserDialog : No
  • Associate developer defined data with each folder FolderView Control : Yes FolderBrowserDialog : No

The FolderView control (and Shell) is available in two editions :

.Net Edition : For use in .Net development using Windows Forms, WPF and ASP.Net

ActiveX Edition : For use in applications developed using Visual C++/MFC/ATL, Visual Basic 6, VBA (Access, Word, Excel, AutoCAD,etc), Borland Delphi and Borland Builder, and HTML/ASP pages.

G Himangi is a Senior Software Developer at LogicNP Software (http://www.ssware.com) and is a member of LogicNP Software's component and controls development team.

By G Himangi

Senin, 16 Maret 2009

Adop Photoshop

Detailed Description

Learning Adobe Photoshop CS3 is easy with instructor-led Video Training

Have you recently upgraded to Adobe PhotoShop CS3? Whether you're a new or existing user, get a handle on the features and improvements found in PhotoShop CS3 through an innovative training program: the self-paced PhotoShop CS3 computer based training course.

This course uses a blend of instructor-led training sessions and computer based training technology to deliver a completely self-paced course directly to your desktop. The PhotoShop CS3 training videos give you the instruction you want without the need for attending live classes. Simply watch recorded videos and see the software in action.

Your investment in PhotoShop cost you hundreds of dollars. Make sure you get the most out of that investment by learning how to use the software. The PhotoShop CS3 training cd teaches you about each of the features and shows you how to use them. With knowledge and training, your creativity will flow. You'll learn how you can use PhotoShop to express yourself and fine tune your images.

Everything you need is included on the Adobe PhotoShop training tutorial including videos, demonstrations, interactive content, printable courseware, and hands-on activities. With the self-paced PhotoShop CS3 CBT installed on your computer, you can learn the ins and outs of using PhotoShop at your own pace.

While traditional classes are a good way to learn, you can't beat the PhotoShop CS3 training videos and interactive courseware. The full motion videos have high production values. More importantly, they have the information and instruction that you value. Watch the videos and demos as often as you need in order to master each task.

The PhotoShop CS3 training cd-roms puts you in charge of your education. If you want to learn a specific feature of PhotoShop, you can jump ahead to that section rather than waiting for the rest of the class to get to that point. You can also work at a pace that is best for you, either fast or slow. You can't fall behind because you are the one calling the shots and deciding when and how fast to study.

IN ONE CD PACKAGE, you will SURELY LEARN the following at a VERY AFFORDABLE PRICE...

Table of contents

Lesson 1: Reviewing the Workspace
1.1 Reviewing Whats New
1.2 Browsing the Tools
1.3 Reviewing the Menus
1.4 Managing Windows
1.5 Configuring Preferences

Lesson 2: Getting Started
2.1 Opening an Image
2.2 Creating a New File
2.3 Opening Multiple Images
2.4 Including File Information
2.5 Review Selecting an Image Area Options

Lesson 3: Performing Photoshop Basics
3.1 Cropping an Image
3.2 Changing Color Modes and Transparency
3.3 Resizing an Image
3.4 Changing the Canvas
3.5 Using Undo, Step Forward and Step Backward
3.6 Using Zoom
3.7 Adding Text

Lesson 4: Making Adjustments
4.1 Using Auto Levels
4.2 Using Auto Color
4.3 Using Auto Contrast
4.4 Reviewing Variations

Lesson 5: Transforming Tools
5.1 Scaling Items
5.2 Rotating Items
5.3 Changing Skew and Distorting
5.4 Changing Perspective and Warping

Lesson 6: Saving and Printing
6.1 Saving a File
6.2 Saving for Web
6.3 Using Print Preview
6.4 Printing an Image

Lesson 7: Working with the Bridge
7.1 Overview of the Bridge
7.2 Managing Images with the Bridge
7.3 Previewing, Comparing, and Stacking

Total training time: ~10 hours
Content: CD-ROM disc (sealed in a DVD-case)

System Requirements:
Platform: vista Windows Vista / XP / 2000 / 9x / NT
Processor: Pentium 133 Mhz or higher
RAM: 32MB
Hard drive space: 10MB
CD-ROM Drive speed: 24X