diff --git a/MBS.Framework/MBS.Framework.csproj b/MBS.Framework/MBS.Framework.csproj
index fd248ce..b6f5215 100644
--- a/MBS.Framework/MBS.Framework.csproj
+++ b/MBS.Framework/MBS.Framework.csproj
@@ -110,6 +110,7 @@
+
diff --git a/MBS.Framework/Settings/CustomSetting.cs b/MBS.Framework/Settings/CustomSetting.cs
new file mode 100644
index 0000000..e8ed0c0
--- /dev/null
+++ b/MBS.Framework/Settings/CustomSetting.cs
@@ -0,0 +1,37 @@
+//
+// CustomSetting.cs - provides a way to display custom controls in the settings dialog
+//
+// Author:
+// Michael Becker
+//
+// Copyright (c) 2021 Mike Becker's Software
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+using System;
+namespace MBS.Framework.Settings
+{
+ public class CustomSetting : Setting
+ {
+ public string ControlTypeName { get; private set; } = null;
+ public CustomSetting(string name, string title, string controlTypeName) : base(name, title)
+ {
+ ControlTypeName = controlTypeName;
+ }
+
+ public override void SetValue(object value, Guid? scopeId = null)
+ {
+ base.SetValue(value);
+ }
+ }
+}