- Aurigma Graphics Mill 5.5 for .NET
- Introduction
- What's New?
- Overview of Features
- Getting Started
- Programming with Graphics Mill for .NET
- File Formats
- Graphics Mill for .NET Add-ons
- Class Library Reference
- Aurigma.GraphicsMill Namespace
- Aurigma.GraphicsMill.AjaxControls Namespace
- Aurigma.GraphicsMill.AjaxControls.VectorObjects Namespace
- Aurigma.GraphicsMill.AjaxControls.VectorObjects.Math Namespace
- Aurigma.GraphicsMill.AjaxControls.VectorObjects.RedoUndo Namespace
- Aurigma.GraphicsMill.Codecs Namespace
- Aurigma.GraphicsMill.Drawing Namespace
- Aurigma.GraphicsMill.Licensing Namespace
- Aurigma.GraphicsMill.Transforms Namespace
- Aurigma.GraphicsMill.WebControls Namespace
- Aurigma.GraphicsMill.WinControls Namespace
- BitmapViewer Class
- ClickDragCreateDesigner Class
- ClosedFreehandVObjectCreateDesigner Class
- ClosedPolyLineVObjectCreateDesigner Class
- ColumnChangedEventArgs Class
- ColumnChangedEventHandler Delegate
- ColumnChangeType Enumeration
- ColumnClickEventArgs Class
- ColumnClickEventHandler Delegate
- ColumnEventArgs Class
- ColumnInsertingEventArgs Class
- ColumnInsertingEventHandler Delegate
- ColumnRemovingEventArgs Class
- ColumnRemovingEventHandler Delegate
- ColumnsEventArgs Class
- ColumnsInsertedEventArgs Class
- ColumnsInsertedEventHandler Delegate
- ColumnsRemovedEventArgs Class
- ColumnsRemovedEventHandler Delegate
- CompositeVObject Class
- CompositeVObjectEditDesigner Class
- ControlPoint Class
- ControlPointCollection Class
- ControlPointType Enumeration
- CrossedEllipseControlPoint Class
- DefaultDesigner Class
- DesignerChangedEventArgs Class
- DesignerChangedEventHandler Delegate
- DiamondControlPoint Class
- DragVObjectAction Class
- EllipseControlPoint Class
- EllipseRubberband Class
- EllipseVObject Class
- EllipseVObjectCreateDesigner Class
- FreehandVObject Class
- FreehandVObjectCreateDesigner Class
- GenericVObjectEditDesigner Class
- IconChangedEventArgs Class
- IconChangedEventHandler Delegate
- IControlPointCollection Interface
- IControlPointsProvider Interface
- ICoordinateMapper Interface
- IDesigner Interface
- IImageList Interface
- IListItem Interface
- ImageFitMode Enumeration
- ImagePrintDocument Class
- ImageRemovedEventArgs Class
- ImageRemovedEventHandler Delegate
- ImageVObject Class
- ImageVObjectCreateDesigner Class
- INavigator Interface
- InvalidationTarget Class
- IQueueItem Interface
- IRubberband Interface
- ItemActionRequestEventArgs Class
- ItemDragEventArgs Class
- ItemDragEventHandler Delegate
- ItemEventArgs Class
- ItemInsertingEventArgs Class
- ItemInsertingEventHandler Delegate
- ItemRemovingEventHandler Delegate
- ItemsEventArgs Class
- ItemsInsertedEventArgs Class
- ItemsInsertedEventHandler Delegate
- ItemsRemovedEventArgs Class
- ItemsRemovedEventHandler Delegate
- IUserInputController Interface
- IVObject Interface
- IVObjectAction Interface
- IVObjectActionCollection Interface
- IVObjectHost Interface
- JointControlPointsProvider Class
- JointVObjectActionCollection Class
- LabelEditedEventArgs Class
- LabelEditedEventHandler Delegate
- LabelEditingEventHandler Delegate
- Layer Class
- LayerChangedEventArgs Class
- LayerChangedEventHandler Delegate
- LayerChangeType Enumeration
- LayerCollection Class
- LayerEventArgs Class
- LayerEventHandler Delegate
- LayerRemovedEventArgs Class
- LayerRemovedEventHandler Delegate
- LineVObject Class
- LineVObjectCreateDesigner Class
- ListColumn Class
- ListColumnCollection Class
- ListColumnTypeConverter Class
- ListItem Class
- ListItemCollection Class
- MaskStyle Enumeration
- MouseEventArgs Class
- MouseEventHandler Delegate
- MultiLayerViewer Class
- MultiLayerViewerInvalidationTarget Class
- PanNavigator Class
- PathControlPoint Class
- PathVObject Class
- PathVObjectCreateDesigner Class
- Pidl Class
- PidlType Enumeration
- PlacementMode Enumeration
- PolylineVObject Class
- PolylineVObject.MoveNodeAction Class
- PolyLineVObjectCreateDesigner Class
- PrintOptions Class
- PrintPlaceholder Class
- QueryImageEventArgs Class
- QueryImageEventHandler Delegate
- QueueItemMethodState Enumeration
- QueueManager Class
- RectangleChangeMode Enumeration
- RectangleController Class
- RectangleControlPoint Class
- RectangleEventArgs Class
- RectangleEventHandler Delegate
- RectangleRubberband Class
- RectangleVObject Class
- RectangleVObjectCreateDesigner Class
- ResizeMode Enumeration
- ResizeVObjectAction Class
- RotateVObjectAction Class
- ScrollBarsStyle Enumeration
- ScrollValue Enumeration
- SkewVObjectAction Class
- StandardFolder Enumeration
- StateChangedEventArgs Class
- StateChangedEventHandler Delegate
- StateChangingEventArgs Class
- StateChangingEventHandler Delegate
- StateType Enumeration
- TextChangedEventArgs Class
- TextChangedEventHandler Delegate
- TextVObject Class
- TextVObject.ChangeTextAreaAction Class
- TextVObjectCreateDesigner Class
- ThumbnailListItem Class
- ThumbnailListView Class
- UserInputController Class
- View Enumeration
- ViewChangedEventArgs Class
- ViewChangedEventHandler Delegate
- ViewerBase Class
- ViewportAlignment Enumeration
- VirtualListView Class
- VObject Class
- VObjectAction Class
- VObjectActionCollection Class
- VObjectCollection Class
- VObjectDrawMode Enumeration
- VObjectEventArgs Class
- VObjectEventHandler Delegate
- VObjectsRubberband Class
- WorkspaceBackgroundStyle Enumeration
- ZoomInNavigator Class
- ZoomMode Enumeration
- ZoomOutNavigator Class
- ZoomQuality Enumeration
- ZoomRectangleNavigator Class
- GraphicsMill Namespace (Client Class Library)
- Aurigma.GraphicsMill.AjaxControls Namespace (Client Class Library)
- Aurigma.GraphicsMill.AjaxControls.VectorObjects Namespace (Client Class Library)
- Aurigma.GraphicsMill.AjaxControls.VectorObjects.Math Namespace (Client Class Library)
- Aurigma.GraphicsMill.AjaxControls.VectorObjects.RedoUndo Namespace (Client Class Library)
- Samples
- Licensing
- Copyright Notices
Pidl Class
The class represents a wrapper class for PIDL structures management.
Namespace:
Aurigma.GraphicsMill.WinControls
Assembly:
Aurigma.GraphicsMill.WinControls (in Aurigma.GraphicsMill.WinControls.dll)
Syntax
Public NotInheritable Class Pidl _
Implements IDisposable
public sealed class Pidl : IDisposable
Remarks
Every object of the file system (like files, folders, drives, etc.) may be identified by the pointer to an item identifier list (or abbreviated - PIDL). Moreover, any object of the Shell namespace may be identified by the PIDL (for example, connected USB storage devices, digital photo cameras, network resources, etc). So, the class provides access to objects of the shell namespace.
To get a PIDL by the path string, you can use the Create(String) method. Also, this method enables to create PIDL for special object of the file system such as My Document folder and similar ones. Just pass a member of the StandardFolder enumeration to this method.
The most exciting feature of this class is possibility to get children of a file system object. This way you can organize a file system tree which includes not only files and folder, but also removable media, special folder, etc. To do it, you should create a root PIDL based on the Desktop and recursively get its subitems. The PIDL distinguishes two kinds of subitems: files and folders.
Files are objects of the file system which cannot have any subitems. They always has a binary content available through the Stream property. To check whether the current PIDL is a file, use the Type property. It should be equal to File.
Contrariwise, folders are objects which can contain subitems. Not only directories can be interpreted as folders, but also system drives, removable media, etc. Folders do not have binary content and its Stream property is not valid. To check whether the current PIDL is a file, use the Type property. It should be equal to Folder. To get all files of the current folder, use the Files property. If you need to get subfolder only, use the Folders property. To get both folders and files, use the Items property. The parent PIDL can be received using the Parent property.
If you want to convert the PIDL to a common file system path string, you can just use the Path property. However keep in mind, that not each PIDL represents physical file or folder. In this case you will get the empty string.
Inheritance Hierarchy
Thread Safety
Static members of this type are safe for multi-threaded operations. Instance members of this type are not safe for multi-threaded operations.Object Model












