From da4afb0cb884693a54090c9c77b0203448f2b49c Mon Sep 17 00:00:00 2001
From: Peter Wagner <peterwagner@live.co.uk>
Date: Thu, 2 Apr 2026 12:13:18 +0100
Subject: [PATCH] * Version 8.0.15.1

---
 Changelog.md                                  | 100 +++++++++++-------
 Directory.Build.props                         |   4 +-
 .../CommonFileDialogs/CommonFileDialog.cs     |   9 +-
 .../Directory.Build.targets                   |   8 +-
 4 files changed, 72 insertions(+), 49 deletions(-)

diff --git a/Changelog.md b/Changelog.md
index f7bd4b9..da05365 100644
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,8 +1,17 @@
 # Changelog
 
+02/04/2026
+
+Version 8.0.15.1
+
+* Fixed issue with `CommonFileDialog`, where the `DefaultFileName` property could not be set.
+
+=========
+
 01/04/2026
 
 Version 8.0.15
+
 * Fixed [#40](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/40), ExplorerBrowser control now only processes keyboard accelerators when it has focus, preventing Tab key interception for other controls
 * Updated `PreFilterMessage` to check message target and focus state before calling `TranslateAcceleratorIO`
 * Added `IsMessageForExplorerBrowser` helper method to verify message window ownership
@@ -19,6 +28,7 @@ Version 8.0.15
 07/12/2025
 
 Version 8.0.14
+
 * Fixed [#32](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/37), `ShellObjectWatcher` won't Destory
 * Usage of null propagation operator `?.` in several places to improve null safety
 * Alligned binary versions to NuGet package versions
@@ -28,6 +38,7 @@ Version 8.0.14
 02/11/2025
 
 Version 8.0.12
+
 * Added support for .NET 10
 * Fixed README inclusion in all NuGet packages to comply with NuGet.org requirements
 * Updated package descriptions to reflect .NET 8-10 support
@@ -38,6 +49,7 @@ Version 8.0.12
 18/10/2025
 
 Version 8.0.11
+
 * Added unified `WindowsAPICodePack` NuGet package containing all components (Core, Shell, Sensors, ExtendedLinguisticServices, ShellExtensions)
 * Implemented automatic build number incrementation using GitHub Actions
 * Enhanced CI/CD workflows with version management
@@ -48,6 +60,7 @@ Version 8.0.11
 19/09/2025
 
 Version 8.0.10
+
 * General improvements and bug fixes
 
 =========
@@ -56,117 +69,130 @@ Version 8.0.10
 
 Version 8.0.9
 
-- Upgrade `sln` file to `slnx` format
-- More `null` checking
-- Removed support for .NET 6
-- Implemented [#14](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/14), How to perform a search with `ExplorerBrowser`
+* Upgrade `sln` file to `slnx` format
+* More `null` checking
+* Removed support for .NET 6
+* Implemented [#14](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/14), How to perform a search with `ExplorerBrowser`
 
 =========
 
 24/12/2024
 
 Version 8.0.8
-- Implemented [#21](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/21), Enhance the `OnViewEnumerationComplete` Event of the `ExplorerBrowser` Control 
+
+* Implemented [#21](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/21), Enhance the `OnViewEnumerationComplete` Event of the `ExplorerBrowser` Control
 
 =========
 
 27/10/2024
 
 Version 8.0.7
-- Implemented [#20](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/20), Add `System.RecordedTV.EpisodeNumber`
-- More `null` checking
+
+* Implemented [#20](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/20), Add `System.RecordedTV.EpisodeNumber`
+* More `null` checking
 
 =========
 
 22/10/2024
 
 Version 8.0.6
-- Resolved [#18](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/18), `CommonFileDialog.FileName` property changes extension back to default
-- New `.editorconfig` configuration
+
+* Resolved [#18](https://github.com/PWagner1/Windows-API-CodePack-NET/issues/18), `CommonFileDialog.FileName` property changes extension back to default
+* New `.editorconfig` configuration
 
 =========
 
 01/07/2024
 
 Version 8.0.5
-- Resolved [#16](https://github.com/Wagnerp/Windows-API-CodePack-NET/issues/16), Useless System.Net.Http
-- Fix NuGet descriptions
+
+* Resolved [#16](https://github.com/Wagnerp/Windows-API-CodePack-NET/issues/16), Useless System.Net.Http
+* Fix NuGet descriptions
 
 =========
 
 10/06/2024
 
 Version 8.0.4
-- Removed support for .NET Core App 3.1
-- Removed support for .NET 5
-- Removed support for .NET 7
-- Some more nullables
-- Add samples
+
+* Removed support for .NET Core App 3.1
+* Removed support for .NET 5
+* Removed support for .NET 7
+* Some more nullables
+* Add samples
 
 =========
 
 01/03/2024
 
 Version 8.0.3
-- Fix the implementation of the property `CheckSelect`
+
+* Fix the implementation of the property `CheckSelect`
 
 =========
 
 24/02/2024
 
 Version 8.0.2
-- Fix for multi-dotted extensions
-- Remove the border on the `ExplorerBrowser` control 
-- New `SelectionChangedEventArgs` for selected folder and file names
-- Ensure that `Shell` is thread safe
+
+* Fix for multi-dotted extensions
+* Remove the border on the `ExplorerBrowser` control
+* New `SelectionChangedEventArgs` for selected folder and file names
+* Ensure that `Shell` is thread safe
 
 =========
 
 14/02/2024
 
 Version 8.0.1
-- Update year 2023 -> 2024
-- Add `Readme` to NuGet packages
-- Add preliminary support for .NET 9
+
+* Update year 2023 -> 2024
+* Add `Readme` to NuGet packages
+* Add preliminary support for .NET 9
 
 =========
 
 14/11/2023
 
 Version 8.0.0
-- Add .NET 8 support
-- More `nullable` checking
+
+* Add .NET 8 support
+* More `nullable` checking
 
 =========
 
 26/02/2023
 
 Version 7.0.4
-- Support for `nullable`
-- Usage of `new()`
-- New symbol packages
+
+* Support for `nullable`
+* Usage of `new()`
+* New symbol packages
 
 =========
 
 17/02/2023
 
 Version 7.0.3
-- Add strong naming
+
+* Add strong naming
 
 =========
 
 13/11/2022
 
 Version 7.0.0
-- Updated to use SDK style projects
-- Use .NET Framework 4.6.2 - 4.8.1, .NET Core 3.1 &  .NET 5 - 7
-- Updated NuGet icon
-- Use C# 10
+
+* Updated to use SDK style projects
+* Use .NET Framework 4.6.2 - 4.8.1, .NET Core 3.1 &  .NET 5 - 7
+* Updated NuGet icon
+* Use C# 10
 
 =========
 
 02/01/2016
- 
+
 Core 1.1.2
-- TaskDialog icons were visible only when defined in Opened event
-- TaskDialog custom/hyperlink button not closing dialog from within Click event
+
+* TaskDialog icons were visible only when defined in Opened event
+* TaskDialog custom/hyperlink button not closing dialog from within Click event
diff --git a/Directory.Build.props b/Directory.Build.props
index ce96002..a6c8b9d 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -1,6 +1,6 @@
 <Project>
 	<PropertyGroup>
-		<LibraryVersion>8.0.19</LibraryVersion>
-		<PackageVersion>8.0.19</PackageVersion>
+		<LibraryVersion>8.0.15.1</LibraryVersion>
+		<PackageVersion>8.0.15.1</PackageVersion>
 	</PropertyGroup>
 </Project>
\ No newline at end of file
diff --git a/Source/Current/Windows API CodePack/Components/Shell/CommonFileDialogs/CommonFileDialog.cs b/Source/Current/Windows API CodePack/Components/Shell/CommonFileDialogs/CommonFileDialog.cs
index a2e6c24..831d7e6 100644
--- a/Source/Current/Windows API CodePack/Components/Shell/CommonFileDialogs/CommonFileDialog.cs	
+++ b/Source/Current/Windows API CodePack/Components/Shell/CommonFileDialogs/CommonFileDialog.cs	
@@ -636,7 +636,7 @@ public void ResetUserSelections()
     /// <summary>
     /// Default file name.
     /// </summary>
-    public string? DefaultFileName { get; }
+    public string? DefaultFileName { get; set; }
 
     private void InitializeEventSink(IFileDialog? nativeDlg)
     {
@@ -823,13 +823,10 @@ private static void GenerateNotImplementedException()
     }
 
     /// <summary>
-    /// Returns if change to the colleciton is allowed.
+    /// Returns if change to the collection is allowed.
     /// </summary>
     /// <returns>true if collection change is allowed.</returns>
-    public virtual bool IsCollectionChangeAllowed()
-    {
-        return true;
-    }
+    public virtual bool IsCollectionChangeAllowed() => true;
 
     /// <summary>
     /// Applies changes to the collection.
diff --git a/Source/Current/Windows API CodePack/Directory.Build.targets b/Source/Current/Windows API CodePack/Directory.Build.targets
index 7c579c5..d267f44 100644
--- a/Source/Current/Windows API CodePack/Directory.Build.targets	
+++ b/Source/Current/Windows API CodePack/Directory.Build.targets	
@@ -1,10 +1,10 @@
 <Project>
 	<PropertyGroup>
-		<AssemblyVersion>8.0.19.9</AssemblyVersion>
+		<AssemblyVersion>8.0.15.1</AssemblyVersion>
 
-		<PackageVersion>8.0.19</PackageVersion>
+		<PackageVersion>8.0.15.1</PackageVersion>
 
-		<FileVersion>8.0.19.9</FileVersion>
+		<FileVersion>8.0.15.1</FileVersion>
 
 		<LangVersion>preview</LangVersion>
 
@@ -12,7 +12,7 @@
 
 		<Authors>Microsoft Corporation, Jacob Slusser, Peter William Wagner (aka PWagner)</Authors>
 
-		<Description>$(Description) Modifications by Jacob Slusser until 2020. Modified to use .NET Frameworks 4.6.2 - 4.8.1, .NET 8 - 10 and refactoring by Peter William Wagner, (aka PWagner) 2023 - 2025.</Description>
+		<Description>$(Description) Modifications by Jacob Slusser until 2020. Modified to use .NET Frameworks 4.6.2 - 4.8.1, .NET 8 - 10 and refactoring by Peter William Wagner, (aka PWagner) 2023 - 2026.</Description>
 
 		<GenerateAssemblyInfo>true</GenerateAssemblyInfo>
 
