diff --git a/VB/WPFGrid_ColumnChooser.sln b/VB/WPFGrid_ColumnChooser.sln
new file mode 100644
index 0000000..1178486
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32421.90
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "WPFGrid_ColumnChooser", "WPFGrid_ColumnChooser\WPFGrid_ColumnChooser.vbproj", "{3070DF24-C291-4248-BDBA-E235F21D9626}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {3070DF24-C291-4248-BDBA-E235F21D9626}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3070DF24-C291-4248-BDBA-E235F21D9626}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3070DF24-C291-4248-BDBA-E235F21D9626}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3070DF24-C291-4248-BDBA-E235F21D9626}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {745E24C6-3160-40E9-9C9B-7E4C4285A710}
+ EndGlobalSection
+EndGlobal
diff --git a/VB/WPFGrid_ColumnChooser/App.xaml b/VB/WPFGrid_ColumnChooser/App.xaml
new file mode 100644
index 0000000..19c0617
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/App.xaml
@@ -0,0 +1,9 @@
+
+
+
+
+
diff --git a/VB/WPFGrid_ColumnChooser/App.xaml.vb b/VB/WPFGrid_ColumnChooser/App.xaml.vb
new file mode 100644
index 0000000..54dface
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/App.xaml.vb
@@ -0,0 +1,10 @@
+Namespace WPFGrid_ColumnChooser
+
+ '''
+ ''' Interaction logic for App.xaml
+ '''
+ Public Partial Class App
+ Inherits Application
+
+ End Class
+End Namespace
diff --git a/VB/WPFGrid_ColumnChooser/AssemblyInfo.vb b/VB/WPFGrid_ColumnChooser/AssemblyInfo.vb
new file mode 100644
index 0000000..62d5e4d
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/AssemblyInfo.vb
@@ -0,0 +1,6 @@
+'(used if a resource is not found in the page,
+' or application resource dictionaries)
+'(used if a resource is not found in the page,
+' app, or any theme specific resource dictionaries)
+ 'where theme specific resource dictionaries are located
+'where the generic resource dictionary is located
diff --git a/VB/WPFGrid_ColumnChooser/MainWindow.xaml b/VB/WPFGrid_ColumnChooser/MainWindow.xaml
new file mode 100644
index 0000000..0e37608
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/MainWindow.xaml
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/VB/WPFGrid_ColumnChooser/MainWindow.xaml.vb b/VB/WPFGrid_ColumnChooser/MainWindow.xaml.vb
new file mode 100644
index 0000000..552f2ee
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/MainWindow.xaml.vb
@@ -0,0 +1,38 @@
+Imports DevExpress.Xpf.Grid
+Imports System.Windows.Controls
+
+Namespace WPFGrid_ColumnChooser
+
+ Public Partial Class MainWindow
+ Inherits Window
+
+ Public Sub New()
+ InitializeComponent()
+ Dim items As ObservableCollection(Of Item) = New ObservableCollection(Of Item)()
+ For i As Integer = 1 To 30 - 1
+ items.Add(New Item() With {.Id = i, .Name = "Name" & i})
+ Next
+
+ grid.ItemsSource = items
+ view.ShowColumnChooser()
+ End Sub
+ End Class
+
+ Public Class HeaderTemplateSelector
+ Inherits DataTemplateSelector
+
+ Public Property ColumnChooserTemplate As DataTemplate
+
+ Public Overrides Function SelectTemplate(ByVal item As Object, ByVal container As DependencyObject) As DataTemplate
+ If ColumnBase.GetHeaderPresenterType(container) = HeaderPresenterType.ColumnChooser AndAlso Equals(CStr(item), NameOf(WPFGrid_ColumnChooser.Item.Id)) Then Return ColumnChooserTemplate
+ Return MyBase.SelectTemplate(item, container)
+ End Function
+ End Class
+
+ Public Class Item
+
+ Public Property Id As Integer
+
+ Public Property Name As String
+ End Class
+End Namespace
diff --git a/VB/WPFGrid_ColumnChooser/WPFGrid_ColumnChooser.vbproj b/VB/WPFGrid_ColumnChooser/WPFGrid_ColumnChooser.vbproj
new file mode 100644
index 0000000..d431daa
--- /dev/null
+++ b/VB/WPFGrid_ColumnChooser/WPFGrid_ColumnChooser.vbproj
@@ -0,0 +1,16 @@
+
+
+ On
+ WinExe
+ net6.0-windows
+ enable
+ true
+ false
+
+
+
+
+
+
+
+
\ No newline at end of file