ShellBrowser .NET Components

Changelog

What is New in ShellBrowser .NET?

Version 7.1

Improvements

  • The ShellListView now passes the FocusedItem rather than the first selected item to controls linked using a ShellControlConnector. Thus, when the user expands the selection, using Shift, an attached preview will display the last selected element, instead of keeping the first.

  • A new "SelectionChanged" event has been added for the ShellListView. It is triggered by a timer, and will therefore only be called once, after one or more items were selected or deselected. It can be used, if rather expensive operations need to take place after the selection has changed.

  • A new "BeforeShowContextMenu" event has been added to the ShellListView, FileList, and ShellTreeView. It passes the selected list items or tree nodes and offers the option to stop the menu from showing. It can also be used to modify an additional context menu that is set in the "ContextMenuStrip" property of the respective control. Specifically, it allows you to set the "Visible", "Checked" or "Enabled" properties of single menu items contained in the custom menu. Note, that it is not possible to modify the shell menu items provided by Windows.

  • Instead of using the “Filter” property, the ShellListView now also provides a “FilterRegularExpression” property, that you can use to set a “System.Text.RegularExpressions.Regex” object, if you need more options than the Filter provides. Note, that the new property is not available in the designer, so you need to set it in code.

  • The “ReadOnly” property of the FileList has been improved. If “true”, no actions affecting the file system, like deleting or renaming, can be executed. Instead, deleting an element only removes it from the list.

Bugfixes

  • When a ShellFilePreview was created at runtime, the "AutomaticRefresh" property was activated for a short time during the creation of the component, even if this was neither intended nor needed. This is now avoided, as it could lead to problems and freezes in individual cases.

  • The handling of PDF files using the “PDF-XChange” preview handler has been fixed in the ShellFilePreview. A problem, where selecting a node in the "Start" folder of the ShellTreeView has jumped to the wrong node, has been fixed.

  • The "NavigationFailed" event should now be called reliably. In prior versions, the event could have been missing, depending on the user action and configuration of the ShellListView.

  • The performance of selecting many files using Ctrl-A has been improved. Also, copying or moving a substantial amount of files to the Clipboard using "Ctrl-C" or “Ctrl-X” now works much faster. This affects the FileList and ShellListView.

  • The “OperationPerformed” event in the ShellListView and ShellTreeView is now called for elements pasted from Outlook (messages or attachments), too.

  • The ShellListView should now be refreshed correctly when dropping or pasting a message or an attachment from Outlook to a folder. This now works, even if the “AutomaticRefresh” property of the ShellListView is not set.

  • A problem that occurred with the runtime creation of a ShellTreeView instance has been fixed. In previous versions, the “SelectedPath” property was not applied correctly, if the “RootedAt” property was also modified in construction code.

04/24/2024

Version 7.0

  • Setup: The component for managing the installation key has been renewed. Therefore, all customers need new installation keys for V7, which are available through our customer area.
  • ShellControlConnector: You can now restrict folder access for all controls linked with a ShellControlConnector instance using the new "FolderChanging" event. The event is called before the path is changed for any of the controls linked with the ShellControlConnector instance and setting the "e.Cancel" parameter will abort the path change.      
  • ShellBrowser, ShellListView, ShellTreeView: Using the new “ReadOnly” property, the components now don’t allow the folder contents to be changed., i.e., no items can be added, removed or renamed. This affects keyboard commands, the context menu and Drag-and-Drop.       
  • ShellAddressBar: The new "ReadOnly" property now prevents entering a path in the edit view of the AddressBar. 
  • ShellListView: Introduced a new “LoadItem” event. It is called in Details and Tile View, when the subitems of an item have been loaded. 
  • ShellBrowser, ShellListView, ShellTreeView: Images assigned in a ContextMenuStrip are now displayed at runtime, when this menu is used as custom context menu that is being added to the shell’s item context menu. In prior versions, these images were missing.
  • ShellListView, ShellTreeView: There is a new “ShellContextMenuCommand.GoUp”, that is reported in the BeforeShellCommand event when the user goes to the parent folder.            
  • FileList, ShellListView: The size of icons in within view "Tile" has been increased to conform with Windows Explorer.
  • ShellListView: When the ShellListView cannot show a folder because it either doesn’t exist or access rights are missing, it will now call the new “NavigationFailed” event for custom actions to take in this case.
  • ShellTreeView: Using the “CompactRoots” property, you can now control whether extra space will be added between root nodes or not.

Bugs

  • ItemIDList, SearchEdit, ShellHistoryToolBar: Going to the parent folder when the ShellList displays search results via the ShellHistoryToolBar or by pressing Alt+Up or Backspace, now displays the search scope, where the current search has been started, not the Desktop folder.
  • ShellHistoryToolBar: A painting issue of the parent directory button has been fixed.      
  • SearchEdit: The search could possibly return too many, seemingly unexpected results. This has been corrected. 
  • ShellAddressBar: An UnauthorizedAccessException that might have occurred when clicking into the AddressBar is now prevented.
  • ShellListView: Files containing a "." in their filename were not renamed correctly when file extensions were hidden from the view as the suffix was misinterpreted as file extension. This has been corrected.
  • ShellListView: The error message the ShellListView displays when trying to navigate to a non-existing folder has been corrected. Note, that the “ShowErrorMessages” property of the ShellListView needs to be set to true for the error message to be displayed.
  • FileList:  A bug, where a path separator might have been missing in the "File" parameter of the “SearchFileMatches” event, has been fixed.

4 September 2023