Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
175 commits
Select commit Hold shift + click to select a range
e21b4df
Create README WinUI3.md
tajbender Feb 13, 2025
7675772
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 12, 2026
8393cdf
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 13, 2026
be98187
Merge branch 'dahall:nullableenabled' into WinUI-3
tajbender Mar 23, 2026
ed2211f
Inital Import of Samples Browser
tajbender Mar 23, 2026
c335430
Update README.md
tajbender Mar 23, 2026
2dc1b76
Bump version to `5.1.0`
tajbender Mar 23, 2026
3385fe7
Merge branch 'WinUI-3' of https://github.com/tajbender/WinClassicSamp…
tajbender Mar 23, 2026
804f3be
Comment out `Vanara.CodeGen` to fix build issues
tajbender Mar 23, 2026
897ef41
Downgrade to `net6.0-windows10.0.19041`.
tajbender Mar 23, 2026
e97acfc
Add `Microsoft.WindowsAppSDK` - version `1.5.250108004`
tajbender Mar 23, 2026
c7020e1
Add project sructure including stubs
tajbender Mar 23, 2026
7a2cd13
Add `CustomControlTemplate`.
tajbender Mar 23, 2026
11913c5
Add `HomePage`
tajbender Mar 24, 2026
661b020
Redesign `HomePage`
tajbender Mar 26, 2026
1c4ab54
Update `README.md`
tajbender Mar 27, 2026
97aa645
Add package `CommunityToolkit.Mvvm`
tajbender Mar 27, 2026
0a158bd
prj: Rename folder `Pages` to `Views`
tajbender Mar 27, 2026
4864b04
Import missing Services, ViewModels, Helpers
tajbender Mar 28, 2026
40ede34
Add Activation Handlers
tajbender Mar 28, 2026
371f03b
Add `Behaviors`, `Services`
tajbender Mar 28, 2026
86d20a1
Merge pull request #5 from dahall/nullableenabled
tajbender Apr 10, 2026
bfc0b7c
Overhaul folder structure
tajbender Apr 10, 2026
0701e64
Remove orphaned Samples Browser
tajbender Apr 10, 2026
a57d42a
Add Solution
tajbender Apr 10, 2026
d5f9a52
Add Build script
tajbender Apr 10, 2026
a8c01b6
Add app skeleton
tajbender Apr 10, 2026
a0ac75f
Update Solution, Cleanup
tajbender Apr 10, 2026
0eb9fc4
Opening `MainWindow` now
tajbender Apr 11, 2026
b1155b8
Add Vanara Packages. Apply `Vanara.CodeGen` while build
tajbender Apr 11, 2026
a7ee956
Add `AboutPage`
tajbender Apr 11, 2026
cd86e6d
Overhaul `MainPage`
tajbender Apr 11, 2026
d387c14
Fix styles. Refactor
tajbender Apr 11, 2026
afeb242
Update `READNE.md`
tajbender Apr 11, 2026
f4c0529
Cleanup
tajbender Apr 12, 2026
cb28360
Add more Styles to `ResourceDictionary`
tajbender Apr 12, 2026
7834803
Add Styles for `NavigationView`
tajbender Apr 13, 2026
bffe61e
Remove `NavigationBar`
tajbender Apr 13, 2026
a75830a
Add Template for `RyderShell`
tajbender Apr 13, 2026
0a1f5e9
Add `Assets` and `I18N` folders
tajbender Apr 13, 2026
2e0e340
Add `Models`, 'Views' and `ViewModels`
tajbender Apr 13, 2026
2cf269e
Add `ApiExplorerPage` and `StartPage`
tajbender Apr 13, 2026
0e14be3
Cleanup
tajbender Apr 13, 2026
156e96b
Add assets
tajbender Apr 13, 2026
37030c7
More Assets. Refactor
tajbender Apr 13, 2026
85dee8c
Fix Folder structure
tajbender Apr 16, 2026
ef0bd03
Set `StartPage` as the - well - starting Page
tajbender Apr 16, 2026
75405bd
Add `SwapChainPanel` to the header, forthcoming easter eggs will love it
tajbender Apr 16, 2026
633e9ff
Assets
tajbender Apr 16, 2026
1fe462f
Add amd Update Packages:
tajbender Apr 16, 2026
a980cc4
Add `AssetRipper.ICSharpCode.Decompiler`
tajbender Apr 16, 2026
84b526e
Add `WinUi-SailBoat` asset with transparency
tajbender Apr 16, 2026
c3a0859
Add Image stubs
tajbender Apr 16, 2026
752d68e
Reorder Assets
tajbender Apr 16, 2026
2d94ccc
Rename asset
tajbender Apr 16, 2026
077f4ff
Add `FeatureTile`s
tajbender Apr 16, 2026
c86dc2d
Refactor `StartPage.xaml`
tajbender Apr 16, 2026
06214d4
Refactor `FeatureTile`
tajbender Apr 16, 2026
6c97b51
Overhaul
tajbender Apr 16, 2026
eb715d4
Add Assets
tajbender Apr 16, 2026
91265de
Overhaul `StartPage`
tajbender Apr 16, 2026
31d38de
Add Asset `Vanara-64px.png`
tajbender Apr 16, 2026
f6789c4
Overhaul `StartPage`
tajbender Apr 17, 2026
8c2038b
Add `FeatureTile`s
tajbender Apr 17, 2026
3e05acf
Restyle `FeatureTile`
tajbender Apr 18, 2026
39cb0bb
Some UI fixes
tajbender Apr 18, 2026
59bdcf4
Add `Sampler.zip` to DOCS
tajbender Apr 18, 2026
0ac6a4f
Refactor `StartPage`
tajbender Apr 19, 2026
11ce86c
Minors
tajbender Apr 19, 2026
6de08db
Add `FloatingStatusBar`.
tajbender Apr 19, 2026
75395d4
Add `Assets\app-Icon.ifx`.
tajbender Apr 19, 2026
b0286d9
Add `Reflection`-Class: `Vanara.Jnana.Reflection.cs`
tajbender Apr 19, 2026
4be39ad
Add Asset `Insert_Disk2Play.psd` (Copilot-derived).
tajbender Apr 19, 2026
2b71f0f
Rename class `SelfReflection`.
tajbender Apr 19, 2026
87424aa
Add `FloatingStatusBar` to `StartPage`.
tajbender Apr 19, 2026
f3a2609
Add Assets
tajbender Apr 20, 2026
2b6a36d
Update `README.md`
tajbender Apr 20, 2026
7ace691
Update README.md
tajbender Apr 20, 2026
cd01822
Asset Refactoring
tajbender Apr 20, 2026
7e5c254
Update `Vanara.CodeGen 5.0.4`
tajbender Apr 20, 2026
df27bcc
Add `Generic.xaml`
tajbender Apr 20, 2026
74cb40b
Update Packages, add transitive Packages
tajbender Apr 20, 2026
1002591
Add `VanaraMonkey.png` (Take care: empty png stub!)
tajbender Apr 20, 2026
b0a64d6
Add `AssemblyElements.cs` from
tajbender Apr 20, 2026
a023922
Refactor
tajbender Apr 20, 2026
73fc56b
Add `NuGetPackages.cs` from `https://github.com/dahall/WinClassicSamp…
tajbender Apr 21, 2026
dcbadd5
Assets
tajbender Apr 21, 2026
eb67c0a
Style `AppBar`
tajbender Apr 22, 2026
838e34f
Set `ExtendsContentIntoTitleBar` to true.
tajbender Apr 22, 2026
5492fb6
Add `Styles/NavigationView/*`. Refactor Assets
tajbender Apr 22, 2026
9649429
Rename folder "WinUIClassicSamplesBrowser" to "Vanara-Jnana"
tajbender Apr 26, 2026
744d6d3
Cleanup Usings
tajbender Apr 27, 2026
9725d58
Re-Arrange folders for dahall's Reflection Classes: Moved to `NuGet` …
tajbender Apr 27, 2026
59bf750
Remove WinForms Sampler orphans
tajbender Apr 27, 2026
74f7082
Add `NuGetUtils` and `AssemblyLoaderService`
tajbender Apr 27, 2026
ce95bea
IMPORTANT: Add `XamlControlsResources` for WinUI default styles
tajbender Apr 27, 2026
a2e2260
Move `AssemblyLoaderService` to `Vanara/Services`
tajbender Apr 27, 2026
d8676cd
Add `SidebarControl`.
tajbender May 2, 2026
3b7ffd2
Refactor GUI
tajbender May 3, 2026
cab3bd6
Add `NavigationService` stub
tajbender May 3, 2026
da0e656
Add `NavButtonStyle.xaml`
tajbender May 3, 2026
1ce2cf8
Refactor TitleBar
tajbender May 3, 2026
3812cf8
Remove `DirectX Background Layer`.
tajbender May 4, 2026
a7e3c98
Rename `MainPage` to `ShellPage`.
tajbender May 4, 2026
644b85e
Refactor `SidebarControl`
tajbender May 4, 2026
84db2d7
Add `ShowSystemMenu()`.
tajbender May 4, 2026
8d0b7d8
Add packages
tajbender May 4, 2026
707d7c5
Cleanup
tajbender May 4, 2026
ee1e6ef
Add `Area 51`.
tajbender May 4, 2026
555bc95
Sett `CanDrag` to `true` for preparing `Drag and Drop` :)
tajbender May 4, 2026
17f2e52
Update Packages.
tajbender May 4, 2026
c921847
Cleanup.
tajbender May 4, 2026
2bb936f
Docs, Assets
tajbender May 5, 2026
d33b024
Cleanup nugets
tajbender May 5, 2026
6c8af8c
Gui
tajbender May 5, 2026
33ca4af
Gui
tajbender May 5, 2026
e2b32fd
Add `NavigationService`
tajbender May 5, 2026
01fb554
more GUI
tajbender May 5, 2026
9bdf236
Add `INavigationAware` interface stub.
tajbender May 5, 2026
158e787
Organize
tajbender May 5, 2026
4c2a99c
Add ISettingsSerializer interface for settings management
tajbender May 5, 2026
b49850e
assets
tajbender May 5, 2026
7e04135
refactor
tajbender May 5, 2026
cc6c588
refactor
tajbender May 5, 2026
f60f01e
Add TabView
tajbender May 6, 2026
14b5399
Add Styles to `TabView`
tajbender May 6, 2026
8e4fb8b
Overhaul Navigation Area 51.
tajbender May 6, 2026
11b3cdc
Refactor
tajbender May 6, 2026
733b748
Refactor
tajbender May 6, 2026
adfd2a3
Add Styles for `FeatureTile`
tajbender May 8, 2026
0bff77c
`SetWindowBounds()`. Refactor
tajbender May 8, 2026
a8ab8d0
Tweak the Gui a little bit
tajbender May 9, 2026
faae182
Re-enable deafult Window TitleBar.
tajbender May 9, 2026
3ed67bd
Add `Vanara Monkey` to TabView as background Watermark.
tajbender May 9, 2026
4ac10a6
Add `GitHubViewModel`.
tajbender May 9, 2026
0d190c4
Add `Parent Folder` and `Refresh` Buttons
tajbender May 10, 2026
8f43682
Add 1st Contracts for `Unified Namespace Platform`
tajbender May 10, 2026
31bd2ed
Add Shell 32 Provider stubs
tajbender May 10, 2026
50c5625
Add `NuGetsPage`
tajbender May 10, 2026
2ced5a8
Overhaul StartPage:
tajbender May 12, 2026
feed48c
Overhaul `SidebarControl`
tajbender May 14, 2026
73fa37c
Cleanup `StartPage`
tajbender May 25, 2026
32893be
Add `TabNavigationService`.
tajbender May 25, 2026
81e06ba
Open an `ApiExplorerPage` on startup
tajbender May 25, 2026
c2b6c92
`NuGetViewModel`
tajbender May 26, 2026
02085e5
Overhaul Page `*.xaml`s
tajbender May 26, 2026
38dcb86
Add construcotrs for `ApiExplorerPage`
tajbender May 26, 2026
f7d3e08
Cleanup
tajbender May 26, 2026
f0d8ae2
Overhaul `FloatingStatusBar`
tajbender May 26, 2026
f128377
Add Amiga-Disk Asset.
tajbender May 26, 2026
7e68457
Add `SettingsPage`
tajbender May 27, 2026
17d0fd9
Cleanup.
tajbender May 27, 2026
6e56423
Add optional `selectTab` paramater upon creation
tajbender May 27, 2026
1da5fbd
Overhaul `MainTabs`, the `TabView`
tajbender May 28, 2026
c09c521
Refactor XAMLs
tajbender May 29, 2026
1e5f8a6
Navigate to `Home` page at start-up
tajbender May 29, 2026
c50d309
Rename `ShellPage` to `GitHubPage`
tajbender May 31, 2026
5b81ddb
Add Resource files for i18n
tajbender May 31, 2026
5e1e13a
Add `UtilitiesPage`. Remove `ApiExplorerPage`.
tajbender May 31, 2026
f193913
Add `AssembliesPage`.
tajbender May 31, 2026
be763a7
Add `SettingsViewModel`
tajbender May 31, 2026
7a4d964
Update Navigation
tajbender May 31, 2026
7ac2ae8
Add `ShellPage`
tajbender May 31, 2026
d9c8be1
Refactor structure
tajbender May 31, 2026
a2c5b1f
Rename project to `Jnana`
tajbender May 31, 2026
342d835
Overhaul `StartPage`
tajbender May 31, 2026
2cf23bd
Overhaul `StartPage`
tajbender May 31, 2026
8b3f09b
Overhaul `SamplesPage`
tajbender May 31, 2026
6526ef4
Overhaul `MainWindow`.
tajbender May 31, 2026
334678b
Rename solution to `Vanara-Jnana`
tajbender May 31, 2026
8388954
Cleanup solution
tajbender May 31, 2026
73c6874
Add Release configuration
tajbender May 31, 2026
49d49ad
Add `MFC-App.ico` as temporary App-Icon
tajbender May 31, 2026
765c263
Add Assets
tajbender May 31, 2026
22c8a6a
Refactor
tajbender Jun 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@
<Using Include="System.Threading"/>
<Using Include="System.Runtime.InteropServices.ComTypes.FILETIME" Alias="FILETIME"/>
</ItemGroup>
<ItemGroup>
<!-- <ItemGroup>

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please undo this change before I merge. The analyzers are part of what I'm testing with this solution.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, my fault. was not intended...

<PackageReference Include="Vanara.CodeGen">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>
</ItemGroup> -->
</Project>
9 changes: 7 additions & 2 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,27 @@
<ItemGroup>
<PackageVersion Include="AvalonEdit" Version="6.3.1.120" />
<PackageVersion Include="CommandLineParser" Version="2.9.1" />
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.1.0" />
<PackageVersion Include="ConEmu.Control.WinForms" Version="1.21.9.5" />
<PackageVersion Include="DirectShowLib.Standard" Version="2.1.0" />
<PackageVersion Include="Markdig" Version="0.44.0" />
<PackageVersion Include="Microsoft.Direct3D.D3D12" Version="1.619.1" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="6.0.1" />
<PackageVersion Include="Microsoft.Toolkit.Uwp.Notifications" Version="7.1.3" />
<PackageVersion Include="Microsoft.Win32.Registry" Version="5.0.0" />
<PackageVersion Include="Microsoft.Windows.CsWinRT" Version="2.2.0" />
<PackageVersion Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.26100.7705" />
<PackageVersion Include="Microsoft.Windows.SDK.Contracts" Version="10.0.26100.7705" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.8.260209005" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.5.250108004" />
<PackageVersion Include="Microsoft.Xaml.Behaviors.WinUI.Managed" Version="2.0.9" />
<PackageVersion Include="Newtonsoft.Json" Version="13.0.1" />
<PackageVersion Include="System.CommandLine" Version="2.0.0-beta4.22272.1" />
<PackageVersion Include="System.Data.OleDb" Version="10.0.4" />
<PackageVersion Include="System.Drawing.Common" Version="10.0.4" />
<PackageVersion Include="System.Management" Version="10.0.4" />
<PackageVersion Include="Vanara.BITS" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.CodeGen" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Core" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Core" Version="4.2.1" />

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Vanara.Core needs to be the same version as all the other Vanara libraries. Please remove this change before I merge.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry, my fault. was not intended...

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

...current config:

		<PackageReference Include="Vanara.Core" Version="5.0.5" />
		<PackageReference Include="Vanara.PInvoke.Shell32" Version="5.0.5" />
		<PackageReference Include="Vanara.PInvoke.User32" Version="5.0.5" />
		<PackageReference Include="Vanara.Windows.Shell" Version="5.0.5" />

<PackageVersion Include="Vanara.DirectoryServices" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Library" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.PInvoke.AclUI" Version="$(VanaraVer)" />
Expand Down Expand Up @@ -110,5 +114,6 @@
<PackageVersion Include="Vanara.Windows.Forms" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Windows.Shell" Version="$(VanaraVer)" />
<PackageVersion Include="Vanara.Windows.Shell.Common" Version="$(VanaraVer)" />
<PackageVersion Include="WinUIEx" Version="2.3.2" />
</ItemGroup>
</Project>
30 changes: 30 additions & 0 deletions Vanara-Jnana/.github/workflows/build.yml

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this file needed for your project? I'm ok leaving it, but it will then build on github after each commit.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, it is NOT needed. The solution actually not even has Deployment Descriptors.

It would be nice you could integrate Jnana's solution into the whole package.

Especially, since I can't build most of the ClassicSamples yet with that old base main branch this Repo is based on.

Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Build WinUI 3 App

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
build:
runs-on: windows-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x

- name: Restore dependencies
run: dotnet restore

- name: Build solution
run: dotnet build --configuration Release --no-restore

- name: Publish (optional for unpackaged)
if: ${{ false }} # set to true if you want publish output
run: dotnet publish -c Release
78 changes: 78 additions & 0 deletions Vanara-Jnana/App.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
<Application
x:Class="ClassicSamplesBrowser.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:system="using:System"
xmlns:ui="using:Microsoft.UI.Xaml"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<Application.Resources>
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls"/>
</Application.Resources>
<!--<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<XamlControlsResources/>
<ResourceDictionary Source="Styles/NavigationView/NavigationView.xaml"/>
<ResourceDictionary Source="Styles/NavigationView/NavigationViewItem.xaml"/>
<ResourceDictionary Source="Styles/NavigationView/NavigationViewItemPresenter.xaml"/>
<ResourceDictionary Source="Styles/NavigationView/NavigationViewItemSeparator.xaml"/>
</ResourceDictionary.MergedDictionaries>
<CornerRadius x:Key="ControlCornerRadius">4</CornerRadius>
<SolidColorBrush x:Key="MicaBaseAltFillColorDefaultBrush" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="MicaBaseFillColorDefaultBrush" Color="{ThemeResource SystemBaseMediumColor}" />
<SolidColorBrush x:Key="MicaBaseFillColorSecondaryBrush" Color="{ThemeResource SystemBaseHighColor}" />
<SolidColorBrush x:Key="TabViewButtonBackground" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="TabViewButtonForeground" Color="{ThemeResource SystemBaseMediumColor}" />
<SolidColorBrush x:Key="TabViewScrollButtonBackground" Color="{ThemeResource SystemBaseLowColor}" />
<SolidColorBrush x:Key="TabViewScrollButtonForeground" Color="{ThemeResource SystemBaseMediumColor}" />
<system:Double x:Key="TabViewItemAddButtonFontSize">14</system:Double>
<system:Double x:Key="TabViewItemScrollButtonFontSize">14</system:Double>
</ResourceDictionary>-->

</Application>



<!--<Style TargetType="TabViewItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TabViewItem">
<Grid x:Name="RootGrid" Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<ContentPresenter x:Name="HeaderContentPresenter" Grid.Column="0" Content="{TemplateBinding Header}" Margin="12,0,12,0" VerticalAlignment="Center" />
<Button x:Name="CloseButton" Grid.Column="1" Width="28" Height="28" Margin="0,0,4,0" VerticalAlignment="Center">
<SymbolIcon Symbol="Cancel" />
</Button>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="RootGrid" Property="Background" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
<Setter TargetName="HeaderContentPresenter" Property="Foreground" Value="White" />
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="TabView">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="TabView">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" Grid.Row="0" Background="{ThemeResource MicaBaseAltFillColorDefaultBrush}">
<TabViewListView x:Name="TabListView" ItemsSource="{TemplateBinding TabItems}" SelectedItem="{TemplateBinding SelectedItem}" SelectionMode="Single" IsTabStop="False" />
<Button x:Name="AddButton" Width="32" Height="32" Margin="4" VerticalAlignment="Center">
<SymbolIcon Symbol="Add" />
</Button>
</StackPanel>
<ContentPresenter Grid.Row="1" Content="{TemplateBinding SelectedContent}" Margin="0" />
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
42 changes: 42 additions & 0 deletions Vanara-Jnana/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
using Microsoft.UI.Windowing;
using Microsoft.UI.Xaml;
//using LaunchActivatedEventArgs = Windows.ApplicationModel.Activation.LaunchActivatedEventArgs;

namespace ClassicSamplesBrowser;

public partial class App : Application
{
private MainWindow? _mainWindow;

public App()
{
InitializeComponent();
// TODO: AppWindowTitleBar.SetIcon("Assets/VanaraMonkey.png");
// TODO: AppWindowTitleBar.SetDragRegion(new Rect(0, 0, 100, 32));
}
private MainWindow? GetOrCreateMainWindow(bool allowInitialCreation = false)
{
if (_mainWindow == null && allowInitialCreation)
{
_mainWindow = new MainWindow
{
// ExtendsContentIntoTitleBar = true
};

// var titleBar = _mainWindow.AppWindow.TitleBar;
// _mainWindow.SetTitleBar(MyDragRegion);
// TODO: titleBar.SetIcon("Assets/VanaraMonkey.png");
}
// = //new Windows.Graphics.SizeInt32(1200, 800);
//_Window.AppWindow.Size...



return _mainWindow;
}

protected override void OnLaunched(LaunchActivatedEventArgs args)
{
GetOrCreateMainWindow(true)?.Activate();
}
}
Binary file added Vanara-Jnana/Assets/Vanara/3,5-Disk copy.psd
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/3,5-Disk.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vanara-Jnana/Assets/Vanara/3,5-Disk.psd
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/Amiga-Disk-Drive.psd
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/Amiga-Disk.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vanara-Jnana/Assets/Vanara/Amiga-Disk.psd
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/Insert_Amiga-Disk.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/Insert_Disk2Play.psd
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/MFC-App.ico
Binary file not shown.
Binary file added Vanara-Jnana/Assets/Vanara/Vanara-64px.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vanara-Jnana/Assets/Vanara/WinUi-Sailing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vanara-Jnana/Assets/VanaraMonkey.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1,652 changes: 1,652 additions & 0 deletions Vanara-Jnana/Assets/WinUi-SailBoat-Header.pdn

Large diffs are not rendered by default.

Binary file added Vanara-Jnana/Assets/app-Icon.ifx
Binary file not shown.
Empty file.
10 changes: 10 additions & 0 deletions Vanara-Jnana/DOCS/ReadMe.de.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# WinUI Classic Samples Browser \ Docs

## Content of this folder

### WinForms Sampler
[Download Sampler.zip](./Sampler.zip)

See [Impact of .net runtime when dealing with low-level Windows-Messages, follow-up: Classic Samples Browser #606](https://github.com/dahall/Vanara/discussions/606#discussioncomment-16492844) discussion.

### docs.assets folder - various assets used for documentation files
143 changes: 143 additions & 0 deletions Vanara-Jnana/DOCS/ReadMe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
# Vanara Jñāna

*A Knowledge Explorer for the Vanara Windows API Library*

Vanara Jñāna is an interactive, WinUI 3–based explorer for the **Vanara** library.
It provides a unified interface to browse APIs, inspect Shell objects, explore samples, and understand how the Vanara toolkit maps to the Windows platform.

The goal of Jñāna is to make the Vanara ecosystem more accessible — for contributors, maintainers, and developers who want to understand the structure and capabilities of the library.

---

## ✨ Features

- **API Explorer**
Navigate Vanara namespaces, types, functions, constants, and structures.

- **Shell & File Explorer Integration**
Visualize Shell items, folders, PIDLs, and related COM structures using Vanara’s Shell32 bindings.

- **Samples Browser**
Browse runnable code samples demonstrating how to use Vanara APIs in real scenarios.

- **WinUI 3 Interface**
Modern, fluent UI with navigation, search, and responsive layout.

- **Extensible Architecture**
Designed to grow with the Vanara library — new modules can be added without restructuring the core.

---

## 🧱 Technology Stack

- **WinUI 3 / Windows App SDK 1.6**
- **.NET 8**
- **Vanara 4.x**
- **C#**
- **MVU/MVVM‑friendly architecture**

---

## 📁 Project Structure
### Root: ̀ Vanara Jñāna
- App.xaml
- 📁 /Controls
- 📁 /Models
- 📁 /Pages
- ApiExplorerPage.xaml
- ShellExplorerPage.xaml
- SamplesPage.xaml
- SettingsPage.xaml
- 📁 /Services
- 📁 /ViewModels

---

## 🚀 Getting Started

### Prerequisites
- Windows 11
- Visual Studio 2022 (17.10+)
- Windows App SDK 1.6
- .NET 8 SDK

### Build & Run

```powershell
git clone https://github.com/<your-repo>/Vanara.Jnana.git
cd Vanara.Jnana
dotnet build
dotnet run
```

# Roadmap

[ ] Full Shell namespace visualization

[ ] Integrated COM inspector

[ ] Live API search with fuzzy matching

[ ] Sample runner with output capture

[ ] Plugin system for community extensions

[ ] Themed UI (Light/Dark/Mica/Custom)

# 🤝 Contributing

Contributions are welcome!

Please open issues for bugs or feature requests, and submit pull requests for improvements.

If you want to add features, fix bugs, or improve documentation:

Fork the repository

Create a feature branch

Submit a Pull Request

Please follow the existing code style and include clear commit messages.

📜 License

This project is licensed under the MIT License.
See LICENSE for details.

----
old version:
----

## Introduction
This Repository is an example of [WinClassicSamples](https://github.com/dahall/WinClassicSamplesCS/) using the Vanara
libraries in a modern `WinUi 3` on `WinAppSDK` environment.

The original WinClassicSamples repository is a collection of samples that demonstrate the use of the Windows API in C#.

The goal is to demonstrate the use of the Vanara libraries in a side-by-side model with full featured modern WinUi environment.

This repository is intended to be a reference for developers who want to use the Vanara libraries in their own projects, and
to provide a starting point for those who want to learn how to use the Vanara libraries in a WinUI3 App.

#### Project Intent
Test and validate that the structures, methods and interfaces in Vanara using known code and outcomes.
Demonstrate the use of the Vanara libraries in a side-by-side model with the native Win32 API.

#### Getting Started
First, take a look at [Template Studio for WinUI (C#)](https://marketplace.visualstudio.com/items?itemName=TemplateStudio.TemplateStudioForWinUICs),
available through Visual Studio Marketplace:

> _Template Studio for WinUI accelerates the creation of new WinUI apps using a wizard-based UI._
>
> Projects created with this extension contain well-formed, readable code and incorporate the latest development features while implementing proven patterns and leading practices. The generated code includes links to documentation and TODO comments that provide useful insight and guidance for turning the generated projects into production applications.
>
> To get started, install the extension, then select the corresponding Template Studio project template when creating a new project in Visual Studio. Name your project, then click Create to launch the Template Studio wizard.


# Resources
- [Vanara Git](https://github.com/dahall/Vanara)
- [WinClassicSamples using ``Vanara and WinForms`` Git](https://github.com/dahall/WinClassicSamplesCS)
- [Official WinUI3 on Microsoft.com](https://docs.microsoft.com/en-us/windows/apps/winui/winui3/)
- [Native Microsoft WinClassicSamples on GitHub](https://github.com/Microsoft/Windows-classic-samples)
- [Template Studio for WinUI (C#) on VisualStudio Marketplace](https://marketplace.visualstudio.com/items?itemName=TemplateStudio.TemplateStudioForWinUICs)
Binary file not shown.
Binary file added Vanara-Jnana/DOCS/docs.assets/WinUi-Sailing.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 6 additions & 0 deletions Vanara-Jnana/Directory.Packages.props
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<Project>
<ItemGroup>
<PackageVersion Include="Microsoft.Web.WebView2" />
<PackageVersion Include="Microsoft.WindowsAppSDK" Version="1.8.0" />
</ItemGroup>
</Project>
Loading