Type a page name and press Enter. You'll jump to the page if it exists, or you can create it if it doesn't.
To create a page in a module other than Interfaces, prefix the name with the module name and a period.
IShellView (Interfaces)
.
C# Definition:
[ComImport(),
Guid("ec39fa88-f8af-41c5-8421-38bed28f4673"),
InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
interface IShellView3 {
int CreateViewWindow3(
[In, MarshalAs(UnmanagedType.Interface)] IShellBrowser psbOwner,
[In, MarshalAs(UnmanagedType.Interface)] IShellView psvPrevious,
[In] SV3CVW3_FLAGS dwViewFlags,
[In] FolderFlags dwMask,
[In] FolderFlags dwFlags,
[In] FolderViewMode fvMode,
[In, Out] ref Guid pvid,
[In, Out] ref RECT prcView,
[Out] out UInt32 phWnd);
}
[ComImport(), Guid("000214E3-0000-0000-C000-000000000046"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
internal interface IShellView
{
/// <summary>
/// Get the handle of the shellview implemented
/// </summary>
void GetWindow( out IntPtr windowHandle);
/// <summary>
/// ContextSensitiveHelp
VB Definition:
<ComImport> _
<Guid("TODO")> _
'TODO: Insert <InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _ if this doesn't derive from IDispatch
Interface IShellView3
TODO
End Interface
internal enum SV3CVW3_FLAGS
{
/// <summary>
/// The default view.
/// </summary>
DEFAULT = 0x0,
/// <summary>
/// In the case of an error, the view should fail silently rather than displaying a UI.
/// </summary>
NONINTERACTIVE = 0x1,
/// <summary>
/// The view mode set by IShellView3::CreateViewWindow3 overrides the saved view state.
/// </summary>
FORCEVIEWMODE = 0x2,
/// <summary>
/// Folder flags set by IShellView3::CreateViewWindow3 override the saved view state.
/// </summary>
FORCEFOLDERFLAGS = 0x4
}
/// <summary>
/// Translates accelerator key strokes when a namespace extension's view has the focus
/// </summary>
[PreserveSig]
long TranslateAcceleratorA( IntPtr message);
/// <summary>
/// Enables or disables modeless dialog boxes. This method is not currently implemented
/// </summary>
void EnableModeless( bool enable);
/// <summary>
/// The folder flags are used to specify how the control displays its content.
/// Most of these flags can be or'ed together.
/// http://msdn.microsoft.com/en-us/library/bb762508(VS.85).aspx
/// </summary>
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1711:IdentifiersShouldNotHaveIncorrectSuffix"), Flags]
public enum FolderFlags : int
{
/// <summary> 0x00000000. Windows 7 and later. No special view options. </summary>
None = 0x00000000,
/// <summary>Automatically arrange the elements in the view. This implies LVS_AUTOARRANGE if the list view control is used to implement the view.</summary>
AutoArrange = 0x00000001,
/// <summary>Abbreviate names. This flag is not currently supported.</summary>
AbbreviatedNames = 0x00000002,
/// <summary>Arrange items on a grid. This flag is not currently supported.</summary>
SnapToGrid = 0x00000004,
/// <summary></summary>
OwnerData = 0x00000008,
/// <summary>This flag is not currently supported.</summary>
BestFitWindow = 0x00000010,
/// <summary>Enable the best-fit window mode. Let the view size the window so that its contents fit inside the view window in the best possible manner.</summary>
Desktop = 0x00000020,
/// <summary>Do not allow more than a single item to be selected. This is used in the common dialog boxes.</summary>
SingleSelection = 0x00000040,
/// <summary>Do not show subfolders.</summary>
NoSubFolders = 0x00000080,
/// <summary>Draw transparently. This is used only for the desktop.</summary>
Transparent = 0x00000100,
/// <summary>This flag is not currently supported.</summary>
NoClientEdge = 0x00000200,
/// <summary>Do not add scroll bars. This is used only for the desktop.</summary>
NoScroll = 0x00000400,
/// <summary>The view should be left-aligned. This implies LVS_ALIGNLEFT if the list view control is used to implement the view.</summary>
AlignLeft = 0x00000800,
/// <summary>The view should not display icons.</summary>
NoIcons = 0x00001000,
/// <summary>Always show the selection.</summary>
ShowSelectionAlways = 0x00002000,
/// <summary>This flag is not currently supported.</summary>
NoVisible = 0x00004000,
/// <summary>This flag is not currently supported.</summary>
SingleClickActivate = 0x00008000,
/// <summary>The view should not be shown as a Web view.</summary>
NoWebView = 0x00010000,
/// <summary>The view should not display file names.</summary>
HideFilenames = 0x00020000,
/// <summary>Turns on the check mode for the view.</summary>
CheckSelect = 0x00040000,
/// <summary>Windows Vista and later: Do not re-enumerate the view (or drop the current contents of the view) when the view is refreshed.</summary>
NoEnumRefresh = 0x00080000,
/// <summary>Windows Vista and later: Do not allow grouping in the view</summary>
NoGrouping = 0x00100000,
/// <summary>Windows Vista and later: When an item is selected, the item and all its sub-items are highlighted.</summary>
FullRowSelect = 0x00200000,
/// <summary>Windows Vista and later: Do not display filters in the view.</summary>
NoFilters = 0x00400000,
/// <summary>Windows Vista and later: Do not display a column header in the view in any view mode.</summary>
NoColumnHeader = 0x00800000,
/// <summary>Windows Vista and later: Only show the column header in details view mode.</summary>
NoHeaderInAllViews = 0x01000000,
/// <summary>Windows Vista and later: When the view is in "tile view mode" the layout of a single item should be extended to the width of the view.</summary>
ExtendedTiles = 0x02000000,
/// <summary>Windows Vista and later: Check boxes have 3 modes: unchecked, SVSI_CHECK, SVSI_CHECK2.</summary>
TriCheckSelect = 0x04000000,
/// <summary>Windows Vista and later: Items can be selected using checkboxes.</summary>
AutoCheckSelect = 0x08000000,
/// <summary>Windows Vista and later: The view should not save view state in the browser.</summary>
NoBrowserViewState = 0x10000000,
/// <summary>Windows Vista and later: The view should list the number of items displayed in each group. To be used with IFolderView2::SetGroupSubsetCount.</summary>
SubsetGrouops = 0x20000000,
/// <summary>Windows Vista and later: Use the search folder for stacking and searching.</summary>
UseSearchFolder = 0x40000000,
// /// <summary>Windows Vista and later: Ensure right-to-left reading layout.</summary>
//AllowRtlReading = 0x80000000 (not int compatible; see bug #9582)
}
/// <summary>
/// Called when the activation state of the view window is changed by an event that is not caused by the Shell view itself. For example, if the TAB key is pressed when the tree has the focus, the view should be given the focus
/// </summary>
void UIActivate([MarshalAs(UnmanagedType.U4)] ActivationStates activtionState);
/// <summary>
/// Refreshes the view's contents in response to user input
/// Explorer calls this method when the F5 key is pressed on an already open view
/// </summary>
void Refresh();
/// <summary>
/// Creates a view window. This can be either the right pane of Explorer or the client window of a folder window.
/// </summary>
void CreateViewWindow([In,MarshalAs(UnmanagedType.Interface)] IShellView previousShellView , [In] ref FolderSettings folderSetting,[In] IShellBrowser shellBrowser,[In] ref RECT bounds,[In,Out] ref IntPtr handleOfCreatedWindow);
/// <summary>
/// Enumerates the different viewmodes of the explorer listview.
/// </summary>
public enum FolderViewMode : int
{
/// <summary> The view should determine the best option.</summary>
Auto = -1,
//FVM_FIRST = 1,
/// <summary>The view should display medium-size icons.</summary>
Icon = 1,
///<summary> Each item appears as a small icon with the label to the right of it. ///</summary>
///<remarks>Using List as SmallIcons - like Delphi version.</remarks>
SmallIcon = 3,
///<summary>
///Each item appears as a small icon with a label to the right of it. Items are arranged in
///columns and cannot be dragged by the user.
///</summary>
List = 3,
/// <summary>Object names and other selected information, such as the size or date last updated, are shown.</summary>
Details = 4,
/// <summary>The view should display thumbnail icons.</summary>
Thumbnail = 5,
/// <summary>The view should display large icons.</summary>
Tile = 6,
//Thumbstrip = 7, (same as Thumbnail)
/// <summary>
/// Windows 7 and later. The view should display content mode.
/// FVM_CONTENT New for Windows 7, see http://msdn.microsoft.com/en-us/library/bb762510%28VS.85%29.aspx
/// </summary>
Content = 8,
//FVM_LAST = 8
}
/// <summary>
/// Retrieves the current folder settings
/// </summary>
void GetCurrentInfo(ref FolderSettings pfs);
/// <summary>
/// Allows the view to add pages to the Options property sheet from the View menu
/// </summary>
void AddPropertySheetPages([In,MarshalAs(UnmanagedType.U4)] uint reserved, [In]ref IntPtr functionPointer,[In] IntPtr lparam);
/// <summary>
/// Saves the Shell's view settings so the current state can be restored during a subsequent browsing session
/// </summary>
void SaveViewState();
/// <summary>
/// Changes the selection state of one or more items within the Shell view window
/// </summary>
void SelectItem( IntPtr pidlItem, [MarshalAs(UnmanagedType.U4)] uint flags);
/// <summary>
/// Retrieves an interface that refers to data presented in the view
/// </summary>
[PreserveSig]
long GetItemObject([MarshalAs(UnmanagedType.U4)] SVGIO AspectOfView, ref Guid riid, ref IntPtr ppv);
}
CONSTS
public struct FOLDERSETTINGS
{
FOLDERVIEWMODE ViewMode;
FOLDERFLAGS fFlags;
}
public enum FOLDERVIEWMODE:uint
{
FVM_AUTO = -1, //The view should determine the best option.
FVM_FIRST = 1, //The minimum constant value in FOLDERVIEWMODE, for validation purposes.
FVM_ICON = 1, //The view should display medium-size icons.
FVM_SMALLICON = 2, //The view should display small icons.
FVM_LIST = 3, //Object names are displayed in a list view.
FVM_DETAILS = 4, //Object names and other selected information, such as the size or date last updated, are shown.
FVM_THUMBNAIL =5, //The view should display thumbnail icons.
FVM_TILE = 6, //The view should display large icons.
FVM_THUMBSTRIP = 7, //The view should display icons in a filmstrip format.
FVM_CONTENT = 8, //Windows 7 and later. The view should display content mode.
FVM_LAST = 8 //The maximum constant value in FOLDERVIEWMODE, for validation purposes.
<ComImport, Guid("000214E3-0000-0000-C000-000000000046"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _
Friend Interface IShellView
' Methods
Sub AddPropertySheetPages(<In, MarshalAs(UnmanagedType.U4)> ByVal reserved As UInt32, <In> ByRef functionPointer As IntPtr, <In> ByVal lparam As IntPtr)
Sub ContextSensitiveHelp(ByVal fEnterMode As Boolean)
Sub CreateViewWindow(<In, MarshalAs(UnmanagedType.Interface)> ByVal previousShellView As IShellView, <In> ByRef folderSetting As FolderSettings, <In> ByVal shellBrowser As IShellBrowser, <In> ByRef bounds As RECT, <In, Out> ByRef handleOfCreatedWindow As IntPtr)
Sub DestroyViewWindow()
Sub EnableModeless(ByVal enable As Boolean)
Sub GetCurrentInfo(ByRef pfs As FolderSettings)
<PreserveSig> _
Function GetItemObject(<MarshalAs(UnmanagedType.U4)> ByVal AspectOfView As SVGIO, ByRef riid As Guid, ByRef ppv As IntPtr) As Long
Sub GetWindow(<Out> ByRef windowHandle As IntPtr)
Sub Refresh()
Sub SaveViewState()
Sub SelectItem(ByVal pidlItem As IntPtr, <MarshalAs(UnmanagedType.U4)> ByVal flags As UInt32)
<PreserveSig> _
Function TranslateAcceleratorA(ByVal message As IntPtr) As Long
Sub UIActivate(<MarshalAs(UnmanagedType.U4)> ByVal activtionState As ActivationStates)
End Interface
User-Defined Types:
None.
Notes:
None.
Extends the capabilities of IShellView2 by providing a method to replace IShellView2::CreateViewWindow2.
3/11/2013 6:07:06 AM - -95.38.14.10
Please edit this page!
Do you have...
helpful tips?
corrections to the existing content?
alternate definitions?
additional languages you want to include?
Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing any supporting types needed.