Can you please add the ability to select (and scroll into view) a file/folder in the RadFileDialog by keyboard? i.e. when focused within the files section of the dialog, typing 's' should scroll to the first file starting with 's' and select it.
All the Win32 and WPF file dialogs support this.
It would be nice to have some additional public properties and commands for ExplorerControl. For example:
Thanks for your consideration!
Expose an event that allows you to cancel the navigation to a folder. For example, if you enter an address in the breadcrumb, click the back button, or select a directory in the navigation tree, then you should be able to cancel the navigation.
This can be done via a new event that have a Cancel property in its arguments, for example.
The naming shown here is not mandatory.
On Windows Server 2012 R2, the Search field in the ExplorerControl doesn't appear to work. This is observable using the Demo app.
When you type into the Search box, the main pane clears of all file/folder entries, but the matching results never appear.
(Note: Windows Server 2012 R2 isn't available in the OS box, so I chose 2008.)
Currently, the RadFileDialogs does not provide an API option for applying additional filtering of the already filtered files.
We could extend the filtering functionality of the RadFileDialogs control.
System.Windows.Data Error: 26 : ItemTemplate and ItemTemplateSelector are ignored for items already of the ItemsControl's container type RadBreadcrumbBarItem
ArithmeticException is thrown on RadSaveFileDialog's ShowDialog call, when the device model profile of the OS (from the Color Management menu) is set to sRGB virtual device model profile.
The profile should be set through the Change system defaults menu. This setting is accessed by opening the Color Management menu in the OS, then select the Advanced tab, then click on Change system defaults... In the newly opened dialog click Advanced again and change the Device profile to sRGB virtual device model profile.
This is actually a bug in the WPF framework that is reported here.
The important part of the exception stacktrace is the following:
System.ArithmeticException: Overflow or underflow in the arithmetic operation. --- End of inner exception stack trace --- at System.Windows.Media.Imaging.ColorConvertedBitmap.FinalizeCreation() at System.Windows.Media.Imaging.ColorConvertedBitmap..ctor(BitmapSource source, ColorContext sourceColorContext, ColorContext destinationColorContext, PixelFormat format) at System.Windows.Media.Imaging.BitmapSource.CreateCachedBitmap(BitmapFrame frame, BitmapSourceSafeMILHandle wicSource, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, BitmapPalette palette) at System.Windows.Media.Imaging.BitmapFrameDecode.FinalizeCreation() at System.Windows.Media.Imaging.BitmapFrameDecode..ctor(Int32 frameNumber, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, BitmapDecoder decoder) at System.Windows.Media.Imaging.BitmapDecoder.SetupFrames(BitmapDecoder decoder, ReadOnlyCollection`1 frames) at System.Windows.Media.Imaging.BitmapDecoder.get_Frames() at System.Windows.Media.Imaging.BitmapFrame.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy) at System.Windows.Media.ImageSourceConverter.ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value) at System.Windows.Baml2006.TypeConverterMarkupExtension.ProvideValue(IServiceProvider serviceProvider)
The following exception is thrown when a new file dialog is created on a separate thread and its ShowDialog method is invoked.
InvalidOperationException: "The calling thread cannot access this object because a different thread owns it."
This happens also if you define an ExplorerControl in any Window opened on another UI thread.
To work this around make sure that you use RadFileDialog and ExplorerControls only on the main UI thread. For example:
App.Current.Dispatcher.BeginInvoke(new Action(() =>
{
RadOpenFileDialog openFileDialog = new RadOpenFileDialog();
openFileDialog.ShowDialog();
}));
ArgumentNullException can be thrown when opening a RadOpenFileDialog in the following scenario: CustomPlaces contains the Desktop directory, InitialDirectory is also set to Desktop and ShowNetworkLocations is false.
System.Windows.Data Error: 8 : Cannot save value from target back to source. BindingExpression:Path=CurrentParentDirectory; DataItem='OpenFileDialogViewModel' (HashCode=57416810); target element is 'FileDialogsBreadcrumb' (Name='PART_PathNavigationPane'); target property is 'CurrentItem' (type 'Object') ArgumentNullException:'System.ArgumentNullException: Value cannot be null.
Parameter name: value
at System.String.StartsWith(String value)
at Telerik.Windows.Controls.FileDialogs.Helpers.PathHelper.CapitalizeNetworkPath(String path)
at Telerik.Windows.Controls.FileDialogs.ExplorerControl.BringItemIntoView(DirectoryBaseWrapper itemToBring)
at Telerik.Windows.Controls.FileDialogs.ExplorerControl.SyncTreeViewWithCurrentDir()
at Telerik.Windows.Controls.FileDialogs.ExplorerControl.ProcessCurrentParentDirChanged()
at System.ComponentModel.PropertyChangedEventHandler.Invoke(Object sender, PropertyChangedEventArgs e)
at Telerik.Windows.Controls.ViewModelBase.OnPropertyChanged(String propertyName)
at Telerik.Windows.Controls.FileDialogs.OpenFileDialogViewModel.OnPropertyChanged(String propertyName)
at Telerik.Windows.Controls.FileDialogs.DialogViewModel.set_CurrentParentDirectory(DirectoryBaseWrapper value)'