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)'
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)
An exception is thrown when the ShowNetworkLocations property is set to false.
System.ArgumentNullException: Value cannot be null. (Parameter '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.BringCurrentDirIntoView() at Telerik.Windows.Controls.FileDialogs.ExplorerControl.MainNavigationPaneLoaded(Object sender, RoutedEventArgs e)
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()