Some files that can be seen in the Windows Explorer are missing from the ExplorerControl of the file dialogs. This happens because of a silent ArgumentOutOfRangeException thrown for a corrupted file that doesn't have a "Date Modified" attribute set. This breaks the loading of the following files in the directory.
Here are the exception details:
System.ArgumentOutOfRangeException: Not a valid Win32 FileTime. Parameter name: fileTime at System.DateTime.FromFileTimeUtc(Int64 fileTime) at System.IO.FileSystemInfo.get_LastWriteTimeUtc() at System.IO.FileSystemInfo.get_LastWriteTime() at Telerik.Windows.Controls.FileDialogs.FileSystemInfoWrapper..ctor(FileSystemInfoWrapperFactoryBase factory, FileSystemInfo fileSystemInfo) at Telerik.Windows.Controls.FileDialogs.FileInfoWrapper..ctor(FileSystemInfoWrapperFactoryBase factory, FileInfo info) at Telerik.Windows.Controls.FileDialogs.FileSystemInfoWrapperFactory.TryGetConcreteFileSystemInfoWrapper(FileSystemInfo fileSystemInfo, FileSystemInfoWrapper& fileSystemInfoWrapper) at Telerik.Windows.Controls.FileDialogs.DirectoryInfoWrapper.LoadFiles(DirectoryInfo directoryInfo) at Telerik.Windows.Controls.FileDialogs.DirectoryInfoWrapper.ReloadChildren()
Using RadOpenFileDialog reports a lot of binding errors. #26 seems to happen all the time, whereas #40 is related to the length of the initial directory.
The dialog is working, but those errors are really disturbing. The more false binding errors we get, the higher the possibility is that we miss real errors. Suppressing them by setting the error level to Critical is not a solution, as it will suppress real errors as well.
System.Windows.Data Error: 26 : ItemTemplate and ItemTemplateSelector are ignored for items already of the ItemsControl's container type; Type='RadWatermarkTextBox'
System.Windows.Data Warning: 40 : BindingExpression path error: 'IsHidden' property not found on 'object' ''OpenFileDialogViewModel' (HashCode=39129256)'. BindingExpression:Path=IsHidden; DataItem='OpenFileDialogViewModel' (HashCode=39129256); target element is 'RadBreadcrumbBarItem' (Name=''); target property is 'Visibility' (type 'Visibility')
System.Windows.Data Warning: 40 : BindingExpression path error: 'IsSystemHiddenActual' property not found on 'object' ''OpenFileDialogViewModel' (HashCode=39129256)'. BindingExpression:Path=IsSystemHiddenActual; DataItem='OpenFileDialogViewModel' (HashCode=39129256); target element is 'RadBreadcrumbBarItem' (Name=''); target property is 'Visibility' (type 'Visibility')
System.Windows.Data Warning: 40 : BindingExpression path error: 'IsHidden' property not found on 'object' ''OpenFileDialogViewModel' (HashCode=39129256)'. BindingExpression:Path=IsHidden; DataItem='OpenFileDialogViewModel' (HashCode=39129256); target element is 'RadBreadcrumbBarItem' (Name=''); target property is 'Visibility' (type 'Visibility')
System.Windows.Data Warning: 40 : BindingExpression path error: 'IsSystemHiddenActual' property not found on 'object' ''OpenFileDialogViewModel' (HashCode=39129256)'. BindingExpression:Path=IsSystemHiddenActual; DataItem='OpenFileDialogViewModel' (HashCode=39129256); target element is 'RadBreadcrumbBarItem' (Name=''); target property is 'Visibility' (type 'Visibility')
System.Windows.Data Error: 26 : ItemTemplate and ItemTemplateSelector are ignored for items already of the ItemsControl's container type; 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)
A binding error is thrown in RadOpenFolderDialog when it is shown. System.Windows.Data Error: 40 : BindingExpression path error: 'IsSearchActive' property not found on 'object' ''OpenFolderDialogViewModel' (HashCode=65514185)'. BindingExpression:Path=IsSearchActive; DataItem='OpenFolderDialogViewModel' (HashCode=65514185); target element is 'FileDialogSearchPane' (Name=''); target property is 'IsSearchViewActive' (type 'Boolean')
OpenFolderDialog with no FileName specified. Select Drive C and the press Open Folder - Exception in PreserveLastAccessDirectoryIfNeeded method.
In R2 2018 Release we released the standalone usage of ExplorerControl and the CurrentDirectoryPath works only as a setter. When user sets it- it navigates to the directory with the given path. It would be useful for the clients to have this property with working getter - to provide the path of the current folder.
RadOpenFileDialog or RadSaveFileDialog with Filter, for example fileDialog.Filter = "Excel Worksheets|*.xlsx;*.xls|All Files|*.*"; fileDialog.FilterIndex = 1; This should filter the files in MainPane on load to xls files only (index is 1-based). However, filter is not applied on load - regression in R3 2018.