diff --git a/Documents/Help/Changelog.md b/Documents/Help/Changelog.md
index bbc4dbd16..efe0ebd8a 100644
--- a/Documents/Help/Changelog.md
+++ b/Documents/Help/Changelog.md
@@ -6,6 +6,7 @@
## 2026-11-xx - Build 2611 - November 2026
+* Resolved [#533](https://github.com/Krypton-Suite/Extended-Toolkit/issues/533), TreeGridView: Plus/Minus Sign Not Displayed in TreeGrid and Collapse/Expand Behaviors Broken
* New `Krypton.Toolkit.Suite.Extended.BottomSheet` module - Material-inspired bottom sheets for WinForms
- **Service API** - `KryptonBottomSheetManager` with `Open`, `OpenAsync`, `OpenNonModal`, and `DismissActive`; `KryptonBottomSheetRef` for `Dismiss()`, `AfterOpened`, `AfterDismissed`, and `AfterDismissedAsync()`
- **Configuration** - `KryptonBottomSheetConfig` with backdrop, height, focus, animation, and conflict options; global defaults via `KryptonBottomSheetDefaultOptions`
@@ -47,10 +48,10 @@
- **Batch Operations** - Replaced individual row insertions/removals with optimized batch operations
- **Expected Performance** - Reduced expansion time from ~6 seconds to ~0.5 seconds for 250 children (approximately 12x faster)
- **Implementation Details**:
- - Added `SiteNodes()` method for batch inserting child nodes efficiently
- - Added `UnSiteNodes()` method for batch removing child nodes and descendants
- - Optimized insertion position calculation to avoid redundant calculations
- - Improved removal order to prevent index shifting issues
+ - Added `SiteNodes()` method for batch inserting child nodes efficiently
+ - Added `UnSiteNodes()` method for batch removing child nodes and descendants
+ - Optimized insertion position calculation to avoid redundant calculations
+ - Improved removal order to prevent index shifting issues
* Resolved [#25](https://github.com/Krypton-Suite/Extended-Toolkit/issues/25), Can't add outlook grid group box control - Fixed language-related error when adding `KryptonOutlookGridGroupBox` control in Visual Studio designer. Replaced deprecated `LanguageManager.Instance.GetString()` calls with `KryptonOutlookGridLanguageManager.GeneralStrings` for DateInterval enum localization, eliminating dependency on resource files that could fail with EN/GB language settings.
* Resolved [#156](https://github.com/Krypton-Suite/Extended-Toolkit/issues/156), `KryptonOutlookGrid` Group Header graphic issue with scaling at 150%
* Implemented [#511](https://github.com/Krypton-Suite/Extended-Toolkit/issues/511), `KryptonMessageBoxExtended` Expandable Footer Feature
@@ -58,9 +59,9 @@
- **Collapsed/Expanded States** - Footer can start collapsed or expanded, with user toggle capability
- **Toggle Button** - "Show details" / "Hide details" button allows users to expand/collapse the footer
- **Multiple Content Types** - Footer supports three content types:
- - **Text** (default) - Uses `KryptonWrapLabel` for simple text content
- - **CheckBox** - Uses `KryptonCheckBox` for options like "Remember my choice"
- - **RichTextBox** - Uses `KryptonRichTextBox` for formatted text with configurable height
+ - **Text** (default) - Uses `KryptonWrapLabel` for simple text content
+ - **CheckBox** - Uses `KryptonCheckBox` for options like "Remember my choice"
+ - **RichTextBox** - Uses `KryptonRichTextBox` for formatted text with configurable height
- **Configurable Content** - Developers can specify footer text content, content type, initial expanded state, and RichTextBox height
- **Automatic Sizing** - Form automatically adjusts size when footer is expanded/collapsed
- **New API Overloads** - Added `Show` method overloads with `footerText`, `footerExpanded`, `footerContentType`, and `footerRichTextBoxHeight` parameters
diff --git a/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.Designer.cs b/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.Designer.cs
index df2162234..981877ae7 100644
--- a/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.Designer.cs
+++ b/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.Designer.cs
@@ -56,16 +56,17 @@ protected override void Dispose(bool disposing)
///
private void InitializeComponent()
{
- this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TreeGridViewAdvancedExample));
this.kryptonPanel1 = new Krypton.Toolkit.KryptonPanel();
+ this.kbtnCollapseAll = new Krypton.Toolkit.KryptonButton();
+ this.kbtnExpandAll = new Krypton.Toolkit.KryptonButton();
this.kbtnDataSource = new Krypton.Toolkit.KryptonButton();
this.kryptonThemeComboBox1 = new Krypton.Toolkit.KryptonThemeComboBox();
this.kryptonTreeGridView1 = new Krypton.Toolkit.Suite.Extended.TreeGridView.KryptonTreeGridView();
- this.Subject = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.From = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.Date = new System.Windows.Forms.DataGridViewTextBoxColumn();
- this.imageStrip = new System.Windows.Forms.ImageList(this.components);
+ this.nameColumn = new Krypton.Toolkit.Suite.Extended.TreeGridView.KryptonTreeGridColumn();
+ this.ageColumn = new Krypton.Toolkit.KryptonDataGridViewTextBoxColumn();
+ this.birthdateColumn = new Krypton.Toolkit.KryptonDataGridViewTextBoxColumn();
+ this.jobColumn = new Krypton.Toolkit.KryptonDataGridViewTextBoxColumn();
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).BeginInit();
this.kryptonPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.kryptonThemeComboBox1)).BeginInit();
@@ -74,6 +75,8 @@ private void InitializeComponent()
//
// kryptonPanel1
//
+ this.kryptonPanel1.Controls.Add(this.kbtnCollapseAll);
+ this.kryptonPanel1.Controls.Add(this.kbtnExpandAll);
this.kryptonPanel1.Controls.Add(this.kbtnDataSource);
this.kryptonPanel1.Controls.Add(this.kryptonThemeComboBox1);
this.kryptonPanel1.Controls.Add(this.kryptonTreeGridView1);
@@ -83,6 +86,24 @@ private void InitializeComponent()
this.kryptonPanel1.Size = new System.Drawing.Size(800, 450);
this.kryptonPanel1.TabIndex = 0;
//
+ // kbtnCollapseAll
+ //
+ this.kbtnCollapseAll.Location = new System.Drawing.Point(576, 109);
+ this.kbtnCollapseAll.Name = "kbtnCollapseAll";
+ this.kbtnCollapseAll.Size = new System.Drawing.Size(212, 31);
+ this.kbtnCollapseAll.TabIndex = 4;
+ this.kbtnCollapseAll.Values.Text = "Collapse All";
+ this.kbtnCollapseAll.Click += new System.EventHandler(this.kbtnCollapseAll_Click);
+ //
+ // kbtnExpandAll
+ //
+ this.kbtnExpandAll.Location = new System.Drawing.Point(576, 75);
+ this.kbtnExpandAll.Name = "kbtnExpandAll";
+ this.kbtnExpandAll.Size = new System.Drawing.Size(212, 31);
+ this.kbtnExpandAll.TabIndex = 3;
+ this.kbtnExpandAll.Values.Text = "Expand All";
+ this.kbtnExpandAll.Click += new System.EventHandler(this.kbtnExpandAll_Click);
+ //
// kbtnDataSource
//
this.kbtnDataSource.Location = new System.Drawing.Point(576, 41);
@@ -111,45 +132,49 @@ private void InitializeComponent()
this.kryptonTreeGridView1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
- this.kryptonTreeGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.AllCells;
+ this.kryptonTreeGridView1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.kryptonTreeGridView1.ColumnHeadersHeight = 36;
this.kryptonTreeGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
- this.Subject,
- this.From,
- this.Date});
+ this.nameColumn,
+ this.ageColumn,
+ this.birthdateColumn,
+ this.jobColumn});
this.kryptonTreeGridView1.DataSource = null;
this.kryptonTreeGridView1.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
this.kryptonTreeGridView1.ImageList = null;
- this.kryptonTreeGridView1.Location = new System.Drawing.Point(13, 13);
+ this.kryptonTreeGridView1.Location = new System.Drawing.Point(0, 0);
this.kryptonTreeGridView1.Name = "kryptonTreeGridView1";
- this.kryptonTreeGridView1.Size = new System.Drawing.Size(556, 425);
+ this.kryptonTreeGridView1.RowHeadersWidth = 51;
+ this.kryptonTreeGridView1.Size = new System.Drawing.Size(557, 450);
this.kryptonTreeGridView1.TabIndex = 0;
//
- // Subject
+ // nameColumn
//
- this.Subject.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
- this.Subject.HeaderText = "Subject";
- this.Subject.Name = "Subject";
- this.Subject.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.nameColumn.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
+ this.nameColumn.HeaderText = "name";
+ this.nameColumn.Name = "nameColumn";
+ this.nameColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
//
- // From
+ // ageColumn
//
- this.From.HeaderText = "From";
- this.From.Name = "From";
- this.From.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.From.Width = 45;
+ this.ageColumn.HeaderText = "age";
+ this.ageColumn.Name = "ageColumn";
+ this.ageColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.ageColumn.Width = 45;
//
- // Date
+ // birthdateColumn
//
- this.Date.HeaderText = "Date";
- this.Date.Name = "Date";
- this.Date.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
- this.Date.Width = 41;
+ this.birthdateColumn.HeaderText = "birthdate";
+ this.birthdateColumn.Name = "birthdateColumn";
+ this.birthdateColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.birthdateColumn.Width = 90;
//
- // imageStrip
+ // jobColumn
//
- this.imageStrip.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit;
- this.imageStrip.ImageSize = new System.Drawing.Size(16, 16);
- this.imageStrip.TransparentColor = System.Drawing.Color.Transparent;
+ this.jobColumn.HeaderText = "job";
+ this.jobColumn.Name = "jobColumn";
+ this.jobColumn.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
+ this.jobColumn.Width = 90;
//
// TreeGridViewAdvancedExample
//
@@ -159,10 +184,11 @@ private void InitializeComponent()
this.Controls.Add(this.kryptonPanel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "TreeGridViewAdvancedExample";
- this.Text = "TreeGridView Example";
- this.Shown += new System.EventHandler(this.TreeGridViewAdvancedExample_Shown);
+ this.Text = "TreeGridView Advanced Example (Issue #533)";
+ this.Load += new System.EventHandler(this.TreeGridViewAdvancedExample_Load);
((System.ComponentModel.ISupportInitialize)(this.kryptonPanel1)).EndInit();
this.kryptonPanel1.ResumeLayout(false);
+ this.kryptonPanel1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.kryptonThemeComboBox1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.kryptonTreeGridView1)).EndInit();
this.ResumeLayout(false);
@@ -174,10 +200,12 @@ private void InitializeComponent()
private KryptonPanel kryptonPanel1;
private Krypton.Toolkit.Suite.Extended.TreeGridView.KryptonTreeGridView kryptonTreeGridView1;
private KryptonButton kbtnDataSource;
+ private KryptonButton kbtnExpandAll;
+ private KryptonButton kbtnCollapseAll;
private KryptonThemeComboBox kryptonThemeComboBox1;
- private DataGridViewTextBoxColumn Subject;
- private DataGridViewTextBoxColumn From;
- private DataGridViewTextBoxColumn Date;
- private ImageList imageStrip;
+ private Krypton.Toolkit.Suite.Extended.TreeGridView.KryptonTreeGridColumn nameColumn;
+ private KryptonDataGridViewTextBoxColumn ageColumn;
+ private KryptonDataGridViewTextBoxColumn birthdateColumn;
+ private KryptonDataGridViewTextBoxColumn jobColumn;
}
-}
\ No newline at end of file
+}
diff --git a/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.cs b/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.cs
index 358f00207..66bd1681e 100644
--- a/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.cs
+++ b/Source/Krypton Toolkit/Examples/TreeGridViewAdvancedExample.cs
@@ -27,7 +27,6 @@
#endregion
using Krypton.Toolkit.Suite.Extended.TreeGridView;
-#pragma warning disable CS8602
namespace Examples
{
@@ -36,31 +35,49 @@ public partial class TreeGridViewAdvancedExample : KryptonForm
public TreeGridViewAdvancedExample()
{
InitializeComponent();
+ }
- // load image strip
- imageStrip.ImageSize = new Size(16, 16);
- imageStrip.TransparentColor = Color.Magenta;
- imageStrip.ImageSize = new Size(16, 16);
- imageStrip.Images.AddStrip(Properties.Resources.newGroupPostIconStrip);
+ private void TreeGridViewAdvancedExample_Load(object sender, EventArgs e)
+ {
+ BuildIssue533SampleTree();
+ kryptonTreeGridView1.ExpandAll();
}
- private void TreeGridViewAdvancedExample_Shown(object sender, EventArgs e)
+ ///
+ /// Regression sample for https://github.com/Krypton-Suite/Extended-Toolkit/issues/533
+ ///
+ private void BuildIssue533SampleTree()
{
- KryptonTreeGridNodeRow? node1 = kryptonTreeGridView1.GridNodes.Add("Using DataView filter when binding to DataGridView", "You", @"10/19/2005 1:02 AM");
- node1.ImageIndex = 0;
- var node2 = node1.Nodes.Add("Re: Using DataView filter when binding to DataGridView", "Me", @"10/19/2005 1:04 AM");
- node2.ImageIndex = 1;
- var node = node2.Nodes.Add("Re: Using DataView filter when binding to DataGridView", "Another", @"10/19/2005 1:20 AM");
- node.ImageIndex = 2;
- node = node2.Nodes.Add("Re: Using DataView filter when binding to DataGridView", "you", @"10/19/2005 1:21 AM");
- node.ImageIndex = 1;
- node = node1.Nodes.Add("Re: Using DataView filter when binding to DataGridView", "you", @"10/19/2005 1:10 AM");
+ kryptonTreeGridView1.GridNodes.Clear();
+
+ var rootNode = kryptonTreeGridView1.GridNodes.Add("Root", "", "", "");
+ var childNode1 = rootNode.Nodes.Add("jane doe", "18", "2022-12-12", "engineer");
+ rootNode.Nodes.Add("joe doe", "18", "2022-12-12", "engineer");
+ childNode1.Nodes.Add("ch-joe doe", "18", "2022-12-12", "engineer");
+
+ for (int i = 0; i < 3; i++)
+ {
+ var childNodex = rootNode.Nodes.Add($"ch-joe doe {i}", "18", "2022-12-12", "engineer");
+ for (int j = 0; j < 3; j++)
+ {
+ childNodex.Nodes.Add($"ccx - joe doe {i}", "18", "2022-12-12", "intern");
+ }
+ }
+ }
+
+ private void kbtnExpandAll_Click(object sender, EventArgs e)
+ {
+ kryptonTreeGridView1.ExpandAll();
+ }
+
+ private void kbtnCollapseAll_Click(object sender, EventArgs e)
+ {
+ kryptonTreeGridView1.CollapseAll();
}
private void kbtnDataSource_Click(object sender, EventArgs e)
{
TreeGridViewDataSourceExample treeGridViewDataSource = new();
-
treeGridViewDataSource.Show();
}
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
index f956680e4..84a21eda2 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView/Krypton.Toolkit.Suite.Extended.AdvancedDataGridView 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.BottomSheet/Krypton.Toolkit.Suite.Extended.BottomSheet.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.BottomSheet/Krypton.Toolkit.Suite.Extended.BottomSheet.csproj
index 4281034b8..dc615a6dc 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.BottomSheet/Krypton.Toolkit.Suite.Extended.BottomSheet.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.BottomSheet/Krypton.Toolkit.Suite.Extended.BottomSheet.csproj
@@ -72,7 +72,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
index b4cf27725..41edee23c 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Buttons/Krypton.Toolkit.Suite.Extended.Buttons 2022.csproj
@@ -72,7 +72,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
index 43c49ff71..c9981266d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Calendar/Krypton.Toolkit.Suite.Extended.Calendar 2022.csproj
@@ -72,7 +72,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Card/Krypton.Toolkit.Suite.Extended.Card.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Card/Krypton.Toolkit.Suite.Extended.Card.csproj
index 6ca0c5ce9..30a9df713 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Card/Krypton.Toolkit.Suite.Extended.Card.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Card/Krypton.Toolkit.Suite.Extended.Card.csproj
@@ -72,7 +72,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
index 998fdfef4..0fb9a531b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.CheckSum.Tools/Krypton.Toolkit.Suite.Extended.CheckSum.Tools 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
index 0633dd804..c08ac9384 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar/Krypton.Toolkit.Suite.Extended.Circular.ProgressBar 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
index a45ae7894..7b653a526 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ComboBox/Krypton.Toolkit.Suite.Extended.ComboBox 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
index 8b2fd8220..f39ffe39f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Common/Krypton.Toolkit.Suite.Extended.Common 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
index 5199f9908..0c1e3954e 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Compression/Krypton.Toolkit.Suite.Extended.Compression 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
index 43fd50acc..1b9551e98 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Controls/Krypton.Toolkit.Suite.Extended.Controls 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
index e2c3b653a..b0deb75da 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Core/Krypton.Toolkit.Suite.Extended.Core 2022.csproj
@@ -73,7 +73,7 @@
-
+
@@ -172,9 +172,6 @@
-
- 110.26.6.175-alpha
-
25.4.0
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
index 0c0bb68e2..86e8e46ce 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Data.Visualisation/Krypton.Toolkit.Suite.Extended.Data.Visualisation 2022.csproj
@@ -31,7 +31,8 @@
6
true
- $(NoWarn);NU1701
+
+ $(NoWarn);NU1701;CS0618
@@ -76,7 +77,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
index a1e9329e0..f954d8b1e 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.DataGridView/Krypton.Toolkit.Suite.Extended.DataGridView 2022.csproj
@@ -75,7 +75,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Debug.Tools/Krypton.Toolkit.Suite.Extended.Debug.Tools 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Debug.Tools/Krypton.Toolkit.Suite.Extended.Debug.Tools 2022.csproj
index b19b8cac3..48a368b98 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Debug.Tools/Krypton.Toolkit.Suite.Extended.Debug.Tools 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Debug.Tools/Krypton.Toolkit.Suite.Extended.Debug.Tools 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
index 389446799..341e3f6d4 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Developer.Utilities/Krypton.Toolkit.Suite.Extended.Developer.Utilities 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
index e6c5c2e40..80cf805da 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dialogs/Krypton.Toolkit.Suite.Extended.Dialogs 2022.csproj
@@ -76,7 +76,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
index 10fd6c3e3..e24f2ccb6 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Dock.Extender/Krypton.Toolkit.Suite.Extended.Dock.Extender 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
index 0f9714d3d..93a418206 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing.Utilities/Krypton.Toolkit.Suite.Extended.Drawing.Utilities 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
index a3ef92ecd..4056a8974 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Drawing/Krypton.Toolkit.Suite.Extended.Drawing 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
index 21cf27b6a..1d1e09817 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Effects/Krypton.Toolkit.Suite.Extended.Effects 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
index c6b64530e..bc9f64aaa 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Error.Reporting/Krypton.Toolkit.Suite.Extended.Error.Reporting 2022.csproj
@@ -76,7 +76,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
index 3f2d4310e..4e1ad48aa 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.File.Copier/Krypton.Toolkit.Suite.Extended.File.Copier 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
index f8f03db46..ec0760bd3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Floating.Toolbars/Krypton.Toolkit.Suite.Extended.Floating.Toolbars 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
index 22bc8cf0d..c446c24bd 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Forms/Krypton.Toolkit.Suite.Extended.Forms 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.GanttChart/Krypton.Toolkit.Suite.Extended.GanttChart.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.GanttChart/Krypton.Toolkit.Suite.Extended.GanttChart.csproj
index f00eb7935..8aebc9604 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.GanttChart/Krypton.Toolkit.Suite.Extended.GanttChart.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.GanttChart/Krypton.Toolkit.Suite.Extended.GanttChart.csproj
@@ -77,7 +77,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
index 94dd0f909..9d7a2e93b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Global.Utilities/Krypton.Toolkit.Suite.Extended.Global.Utilities 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
index 4fc72fad8..188cd25fd 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.IO/Krypton.Toolkit.Suite.Extended.IO 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
index 1ebb29df7..1033c02ed 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.InputBox/Krypton.Toolkit.Suite.Extended.InputBox 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
index c05103087..ad0cde2b3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Language.Model/Krypton.Toolkit.Suite.Extended.Language.Model 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
index 21b7473bf..d47aaed1a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Memory.Box/Krypton.Toolkit.Suite.Extended.Memory.Box 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.MessageDialog/Krypton.Toolkit.Suite.Extended.MessageDialog.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.MessageDialog/Krypton.Toolkit.Suite.Extended.MessageDialog.csproj
index b600e3465..f7888cd64 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.MessageDialog/Krypton.Toolkit.Suite.Extended.MessageDialog.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.MessageDialog/Krypton.Toolkit.Suite.Extended.MessageDialog.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
index 60bc5d5c1..b4e7cb7bb 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Messagebox/Krypton.Toolkit.Suite.Extended.Messagebox 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
index 139216f81..772ae4923 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navi.Suite/Krypton.Toolkit.Suite.Extended.Navi.Suite 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
index 835faa28c..fce31e269 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Navigator/Krypton.Toolkit.Suite.Extended.Navigator 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
index e609799e9..fc3b09dad 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Networking/Krypton.Toolkit.Suite.Extended.Networking 2022.csproj
@@ -76,7 +76,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
index eaae13d67..3ebb95341 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Notifications/Krypton.Toolkit.Suite.Extended.Notifications 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
index 4586ec674..4d88f6ee5 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Outlook.Grid/Krypton.Toolkit.Suite.Extended.Outlook.Grid 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
index 98da5a087..7f8073e3a 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Panels/Krypton.Toolkit.Suite.Extended.Panels 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
index 6aee1444d..98a2d8280 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Resources/Krypton.Toolkit.Suite.Extended.Resources 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
index 86be33be7..3b4c1df07 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ribbon/Krypton.Toolkit.Suite.Extended.Ribbon 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Security/Krypton.Toolkit.Suite.Extended.Security 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Security/Krypton.Toolkit.Suite.Extended.Security 2022.csproj
index 7bf20e317..ca9d0e2bb 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Security/Krypton.Toolkit.Suite.Extended.Security 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Security/Krypton.Toolkit.Suite.Extended.Security 2022.csproj
@@ -72,7 +72,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
index 35da8b8c0..1f10af27c 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Settings/Krypton.Toolkit.Suite.Extended.Settings 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
index bb36bb5e6..d5df05d52 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Shared/Krypton.Toolkit.Suite.Extended.Shared 2022.csproj
@@ -73,7 +73,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
index 4547b1b6a..f04b18375 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater.Core/Krypton.Toolkit.Suite.Extended.Software.Updater.Core 2022.csproj
@@ -73,7 +73,7 @@
-
+
@@ -151,9 +151,6 @@
-
- 110.26.6.175-alpha
-
25.4.0
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
index fe74a6c9f..821afe095 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Software.Updater/Krypton.Toolkit.Suite.Extended.Software.Updater 2022.csproj
@@ -76,7 +76,7 @@
-
+
@@ -124,7 +124,7 @@
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
index 80ddfcadd..01094c1e3 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs/Krypton.Toolkit.Suite.Extended.Specialised.Dialogs 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
index d9d1a4bf2..a4c30005d 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Theme.Switcher/Krypton.Toolkit.Suite.Extended.Theme.Switcher 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ToastNotification/Krypton.Toolkit.Suite.Extended.ToastNotification 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ToastNotification/Krypton.Toolkit.Suite.Extended.ToastNotification 2022.csproj
index 0c13a7098..01248b3ce 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ToastNotification/Krypton.Toolkit.Suite.Extended.ToastNotification 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.ToastNotification/Krypton.Toolkit.Suite.Extended.ToastNotification 2022.csproj
@@ -72,7 +72,7 @@
-
+
@@ -134,18 +134,6 @@
-
-
- 110.26.6.175-alpha
-
-
-
-
-
- 110.26.6.175-alpha
-
-
-
True
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
index beee6b951..d7a6ed9cc 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Toggle.Switch/Krypton.Toolkit.Suite.Extended.Toggle.Switch 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
index ddea35418..5a678cec8 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Box/Krypton.Toolkit.Suite.Extended.Tool.Box 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
index b25730534..c192edfed 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items/Krypton.Toolkit.Suite.Extended.Tool.Strip.Items 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tools/Krypton.Toolkit.Suite.Extended.Tools 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tools/Krypton.Toolkit.Suite.Extended.Tools 2022.csproj
index 5e9e7dcd3..986052732 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tools/Krypton.Toolkit.Suite.Extended.Tools 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Tools/Krypton.Toolkit.Suite.Extended.Tools 2022.csproj
@@ -71,7 +71,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Components/KryptonTreeGridCell.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Components/KryptonTreeGridCell.cs
index 865072981..9d437cd1c 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Components/KryptonTreeGridCell.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Components/KryptonTreeGridCell.cs
@@ -260,25 +260,52 @@ protected override void Paint(Graphics graphics, Rectangle clipBounds, Rectangle
if (node.HasChildren || node.Grid.VirtualNodes)
{
- try
- {
- // Paint node glyphs
- if (node.IsExpanded)
- {
- node.Grid.ROpen.DrawBackground(graphics, new Rectangle(glyphRect.X, glyphRect.Y + glyphRect.Height / 2 - 4, 10, 10));
- }
- else
- {
- node.Grid.RClosed.DrawBackground(graphics, new Rectangle(glyphRect.X, glyphRect.Y + glyphRect.Height / 2 - 4, 10, 10));
- }
- }
- catch
- {
- // TODO: Empty - Why ?
- }
+ DrawExpandCollapseGlyph(graphics, glyphRect, node.IsExpanded, cellStyle.ForeColor);
}
+ }
+
+ private static void DrawExpandCollapseGlyph(Graphics graphics, Rectangle glyphRect, bool isExpanded, Color foreColor)
+ {
+ Image? icon = GetExpandCollapseGlyph(isExpanded);
+ if (icon != null)
+ {
+ graphics.DrawImage(icon, glyphRect.X, glyphRect.Y + glyphRect.Height / 2 - 4, 11, 11);
+ return;
+ }
+
+ DrawExpandCollapseGlyphFallback(graphics, glyphRect, isExpanded, foreColor);
+ }
+
+ private static Image? GetExpandCollapseGlyph(bool isExpanded)
+ {
+ bool useOffice2010 = KryptonManager.CurrentGlobalPalette != null &&
+ (KryptonManager.CurrentGlobalPalette.GetRenderer() == KryptonManager.RenderOffice2010 ||
+ KryptonManager.CurrentGlobalPalette.GetRenderer() == KryptonManager.RenderOffice2013);
+
+ if (isExpanded)
+ {
+ return useOffice2010 ? Resources.TreeGridImageResources.ExpandIcon2010 : Resources.TreeGridImageResources.CollapseIcon;
+ }
+
+ return useOffice2010 ? Resources.TreeGridImageResources.CollapseIcon2010 : Resources.TreeGridImageResources.ExpandIcon;
+ }
+
+ private static void DrawExpandCollapseGlyphFallback(Graphics graphics, Rectangle glyphRect, bool isExpanded, Color foreColor)
+ {
+ const int glyphSize = 9;
+ int y = glyphRect.Y + (glyphRect.Height - glyphSize) / 2;
+ var box = new Rectangle(glyphRect.X, y, glyphSize, glyphSize);
+ using var pen = new Pen(foreColor);
+ graphics.DrawRectangle(pen, box);
+ int midY = box.Y + box.Height / 2;
+ int midX = box.X + box.Width / 2;
+ graphics.DrawLine(pen, box.X + 2, midY, box.Right - 2, midY);
+ if (!isExpanded)
+ {
+ graphics.DrawLine(pen, midX, box.Y + 2, midX, box.Bottom - 2);
+ }
}
protected override void OnMouseUp(DataGridViewCellMouseEventArgs e)
{
@@ -292,26 +319,32 @@ protected override void OnMouseUp(DataGridViewCellMouseEventArgs e)
}
protected override void OnMouseDown(DataGridViewCellMouseEventArgs e)
{
- if (e.Location.X > InheritedStyle.Padding.Left)
+ if (DataGridView == null)
+ {
+ return;
+ }
+
+ Rectangle displayRect = DataGridView.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, false);
+ Rectangle glyphRect = new(displayRect.X + GlyphMargin, displayRect.Y, INDENT_WIDTH, displayRect.Height - 1);
+ int clickX = e.X + displayRect.X;
+
+ if (clickX > glyphRect.X + 11 || clickX < glyphRect.X)
{
base.OnMouseDown(e);
+ return;
}
- else
+
+ KryptonTreeGridNodeRow? node = OwningNode;
+ if (node != null)
{
- // Expand the node
- //TODO: Calculate more precise location
- KryptonTreeGridNodeRow? node = OwningNode;
- if (node != null)
+ node.Grid.InExpandCollapseMouseCapture = true;
+ if (node.IsExpanded)
{
- node.Grid.InExpandCollapseMouseCapture = true;
- if (node.IsExpanded)
- {
- node.Collapse();
- }
- else
- {
- node.Expand();
- }
+ node.Collapse();
+ }
+ else
+ {
+ node.Expand();
}
}
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
index 6ebc15d0c..1188f4c03 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Krypton.Toolkit.Suite.Extended.TreeGridView 2022.csproj
@@ -77,7 +77,7 @@
-
+
@@ -115,6 +115,21 @@
+
+
+ True
+ True
+ TreeGridImageResources.resx
+
+
+
+
+
+ ResXFileCodeGenerator
+ TreeGridImageResources.Designer.cs
+
+
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/KryptonTreeGridView.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/KryptonTreeGridView.cs
index d50ad7934..9dd72bdb1 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/KryptonTreeGridView.cs
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/KryptonTreeGridView.cs
@@ -50,9 +50,6 @@ public class KryptonTreeGridView : KryptonDataGridView
private bool _showLines = true;
private DataTable _dataSource;
- internal VisualStyleRenderer? ROpen; // = new VisualStyleRenderer(VisualStyleElement.TreeView.Glyph.Opened);
- internal VisualStyleRenderer? RClosed; // = new VisualStyleRenderer(VisualStyleElement.TreeView.Glyph.Closed);
-
#region Constructor
public KryptonTreeGridView()
{
@@ -69,17 +66,6 @@ public KryptonTreeGridView()
ShowLines = true;
// Ensures that all rows are added unshared by listening to the CollectionChanged event.
base.Rows.CollectionChanged += delegate { };
- try
- {
- // TODO: This should be the one from the Theme - See KryptonTree
- ROpen = new VisualStyleRenderer(VisualStyleElement.TreeView.Glyph.Opened);
- RClosed = new VisualStyleRenderer(VisualStyleElement.TreeView.Glyph.Closed);
- }
- catch
- {
- // TODO: Empty - Why ?
- }
-
}
protected override void Dispose(bool disposing)
@@ -821,10 +807,23 @@ protected internal virtual void SiteNodes(TreeGridNodeCollection nodes, KryptonT
// Since we're inserting sequentially, each insertion shifts subsequent indices by 1
foreach (KryptonTreeGridNodeRow? childNode in nodes)
{
- Debug.Assert(childNode.RowIndex == -1, @"Row is already in the grid.");
-
childNode.Grid = this;
-
+
+ if (childNode.IsSited)
+ {
+ if (childNode is { IsExpanded: true, Nodes.Count: > 0 })
+ {
+ SiteNodes(childNode.Nodes, childNode);
+ insertIndex = FindLastDescendantRowIndex(childNode) + 1;
+ }
+ else
+ {
+ insertIndex = childNode.RowIndex + 1;
+ }
+
+ continue;
+ }
+
// Insert at the calculated position
if (insertIndex < base.Rows.Count)
{
@@ -834,18 +833,17 @@ protected internal virtual void SiteNodes(TreeGridNodeCollection nodes, KryptonT
{
base.Rows.Add(childNode);
}
-
+
// Mark as sited
childNode.Sited();
-
+
// Increment index for next sibling insertion
insertIndex++;
-
+
// If this node is expanded, recursively site its children
// After recursive insertion, update insertIndex to account for all inserted descendants
if (childNode is { IsExpanded: true, Nodes.Count: > 0 })
{
- int beforeInsert = insertIndex - 1; // The current childNode's index
SiteNodes(childNode.Nodes, childNode);
// After recursive insertion, find the last descendant row index
// The next sibling should be inserted after all descendants
@@ -924,27 +922,41 @@ protected internal virtual void UnSiteNodes(TreeGridNodeCollection nodes)
/// List to add rows to
private void CollectDescendantRows(KryptonTreeGridNodeRow? node, List rowsToRemove)
{
- if (node == null || !node.IsSited)
+ if (node == null)
{
return;
}
- // Add all expanded children first (they need to be removed before their parent)
- if (node.IsExpanded)
+ // Walk the logical tree structure regardless of IsExpanded (matches legacy UnSiteNode).
+ foreach (KryptonTreeGridNodeRow? childNode in node.Nodes)
{
- foreach (KryptonTreeGridNodeRow? childNode in node.Nodes)
- {
- CollectDescendantRows(childNode, rowsToRemove);
- }
+ CollectDescendantRows(childNode, rowsToRemove);
}
- // Add this node to the removal list
- if (node.RowIndex >= 0)
+ if (node is { IsSited: true, RowIndex: >= 0 })
{
rowsToRemove.Add(node);
}
}
+ private static bool HasUnsitedDescendants(KryptonTreeGridNodeRow node)
+ {
+ foreach (KryptonTreeGridNodeRow? child in node.Nodes)
+ {
+ if (!child.IsSited)
+ {
+ return true;
+ }
+
+ if (child.IsExpanded && HasUnsitedDescendants(child))
+ {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
protected internal virtual bool ExpandNode(KryptonTreeGridNodeRow node)
{
if (!node.IsExpanded || VirtualNodes)
@@ -974,11 +986,29 @@ protected internal virtual bool ExpandNode(KryptonTreeGridNodeRow node)
return !exp.Cancel;
}
- else
+
+ if (node.HasChildren && HasUnsitedDescendants(node))
{
- // row is already expanded, so we didn't do anything.
- return false;
+ var exp = new ExpandingEventArgs(node);
+ OnNodeExpanding(exp);
+
+ if (!exp.Cancel)
+ {
+ BeginUpdate();
+ _inExpandCollapse = true;
+ SiteNodes(node.Nodes, node);
+ var exped = new ExpandedEventArgs(node);
+ OnNodeExpanded(exped);
+ _inExpandCollapse = false;
+ EndUpdate();
+ InvalidateCell(node.Cells[0]);
+ }
+
+ return !exp.Cancel;
}
+
+ // row is already expanded, so we didn't do anything.
+ return false;
}
protected override void OnMouseUp(MouseEventArgs e)
@@ -1000,9 +1030,17 @@ protected override void OnMouseMove(MouseEventArgs e)
[Description("Expands all nodes")]
public void ExpandAll()
{
- foreach (KryptonTreeGridNodeRow? node in GridNodes)
+ BeginUpdate();
+ try
+ {
+ foreach (KryptonTreeGridNodeRow? node in GridNodes)
+ {
+ ExpandAllImp(node);
+ }
+ }
+ finally
{
- ExpandAllImp(node);
+ EndUpdate();
}
}
@@ -1022,9 +1060,17 @@ private void ExpandAllImp(KryptonTreeGridNodeRow? node)
[Description("Collapse all nodes")]
public void CollapseAll()
{
- foreach (var node in GridNodes)
+ BeginUpdate();
+ try
+ {
+ foreach (var node in GridNodes)
+ {
+ CollapseAllImp(node);
+ }
+ }
+ finally
{
- CollapseAllImp(node);
+ EndUpdate();
}
}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon.png b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon.png
new file mode 100644
index 000000000..c41bda487
Binary files /dev/null and b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon.png differ
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon2010.png b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon2010.png
new file mode 100644
index 000000000..546a733ce
Binary files /dev/null and b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/CollapseIcon2010.png differ
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon.png b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon.png
new file mode 100644
index 000000000..29081d458
Binary files /dev/null and b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon.png differ
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon2010.png b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon2010.png
new file mode 100644
index 000000000..c21ce6807
Binary files /dev/null and b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/ExpandIcon2010.png differ
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.Designer.cs b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.Designer.cs
new file mode 100644
index 000000000..ff109aa50
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.Designer.cs
@@ -0,0 +1,51 @@
+//------------------------------------------------------------------------------
+//
+// This code was generated by a tool.
+//
+//------------------------------------------------------------------------------
+
+#nullable enable
+namespace Krypton.Toolkit.Suite.Extended.TreeGridView.Resources;
+
+[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
+[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+internal static class TreeGridImageResources
+{
+ private static global::System.Resources.ResourceManager? resourceMan;
+
+ private static global::System.Globalization.CultureInfo? resourceCulture;
+
+ internal static global::System.Resources.ResourceManager ResourceManager
+ {
+ get
+ {
+ if (resourceMan is null)
+ {
+ resourceMan = new global::System.Resources.ResourceManager(
+ "Krypton.Toolkit.Suite.Extended.TreeGridView.Resources.TreeGridImageResources",
+ typeof(TreeGridImageResources).Assembly);
+ }
+
+ return resourceMan;
+ }
+ }
+
+ internal static global::System.Globalization.CultureInfo? Culture
+ {
+ get => resourceCulture;
+ set => resourceCulture = value;
+ }
+
+ internal static System.Drawing.Bitmap CollapseIcon =>
+ (System.Drawing.Bitmap)ResourceManager.GetObject("CollapseIcon", resourceCulture)!;
+
+ internal static System.Drawing.Bitmap CollapseIcon2010 =>
+ (System.Drawing.Bitmap)ResourceManager.GetObject("CollapseIcon2010", resourceCulture)!;
+
+ internal static System.Drawing.Bitmap ExpandIcon =>
+ (System.Drawing.Bitmap)ResourceManager.GetObject("ExpandIcon", resourceCulture)!;
+
+ internal static System.Drawing.Bitmap ExpandIcon2010 =>
+ (System.Drawing.Bitmap)ResourceManager.GetObject("ExpandIcon2010", resourceCulture)!;
+}
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.resx b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.resx
new file mode 100644
index 000000000..d4542ff67
--- /dev/null
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.TreeGridView/Resources/TreeGridImageResources.resx
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ CollapseIcon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ CollapseIcon2010.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ExpandIcon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
+ ExpandIcon2010.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
+
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate.Lite/Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate.Lite/Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj
index 3c5e40618..59c00040e 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate.Lite/Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate.Lite/Krypton.Toolkit.Suite.Extended.Ultimate.Lite 2022.csproj
@@ -85,7 +85,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate/Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate/Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj
index dae76c9ac..7e7fcbe84 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate/Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Ultimate/Krypton.Toolkit.Suite.Extended.Ultimate 2022.csproj
@@ -82,7 +82,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
index 5ca5175ca..fd84e2c9b 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Utilities/Krypton.Toolkit.Suite.Extended.Utilities 2022.csproj
@@ -75,7 +75,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
index 9bbe2aa6f..d4a2ea91f 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView/Krypton.Toolkit.Suite.Extended.VirtualTreeColumnView 2022.csproj
@@ -78,7 +78,7 @@
-
+
diff --git a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
index 028921386..36644d94c 100644
--- a/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
+++ b/Source/Krypton Toolkit/Krypton.Toolkit.Suite.Extended.Wizard/Krypton.Toolkit.Suite.Extended.Wizard 2022.csproj
@@ -74,7 +74,7 @@
-
+
diff --git a/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj b/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
index e756a6390..279cf5c36 100644
--- a/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
+++ b/Source/Krypton Toolkit/ZipExtractor/ZipExtractor.csproj
@@ -18,7 +18,7 @@
-
+