Skip to content

Commit 1f6b9dc

Browse files
Custom-ContextMenu sample committed.
1 parent 7c71e34 commit 1f6b9dc

13 files changed

+669
-0
lines changed
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="utf-8" ?>
2+
<configuration>
3+
<startup>
4+
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
5+
</startup>
6+
</configuration>
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<Application x:Class="Contextmenu.App"
2+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4+
xmlns:local="clr-namespace:Contextmenu"
5+
StartupUri="MainWindow.xaml">
6+
<Application.Resources>
7+
8+
</Application.Resources>
9+
</Application>
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Configuration;
4+
using System.Data;
5+
using System.Linq;
6+
using System.Threading.Tasks;
7+
using System.Windows;
8+
9+
namespace Contextmenu
10+
{
11+
/// <summary>
12+
/// Interaction logic for App.xaml
13+
/// </summary>
14+
public partial class App : Application
15+
{
16+
}
17+
}
Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
4+
<PropertyGroup>
5+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
6+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
7+
<ProjectGuid>{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}</ProjectGuid>
8+
<OutputType>WinExe</OutputType>
9+
<RootNamespace>Contextmenu</RootNamespace>
10+
<AssemblyName>Contextmenu</AssemblyName>
11+
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
12+
<FileAlignment>512</FileAlignment>
13+
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
14+
<WarningLevel>4</WarningLevel>
15+
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
16+
<Deterministic>true</Deterministic>
17+
</PropertyGroup>
18+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
19+
<PlatformTarget>AnyCPU</PlatformTarget>
20+
<DebugSymbols>true</DebugSymbols>
21+
<DebugType>full</DebugType>
22+
<Optimize>false</Optimize>
23+
<OutputPath>bin\Debug\</OutputPath>
24+
<DefineConstants>DEBUG;TRACE</DefineConstants>
25+
<ErrorReport>prompt</ErrorReport>
26+
<WarningLevel>4</WarningLevel>
27+
</PropertyGroup>
28+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
29+
<PlatformTarget>AnyCPU</PlatformTarget>
30+
<DebugType>pdbonly</DebugType>
31+
<Optimize>true</Optimize>
32+
<OutputPath>bin\Release\</OutputPath>
33+
<DefineConstants>TRACE</DefineConstants>
34+
<ErrorReport>prompt</ErrorReport>
35+
<WarningLevel>4</WarningLevel>
36+
</PropertyGroup>
37+
<ItemGroup>
38+
<Reference Include="Syncfusion.Licensing, Version=18.4460.0.32, Culture=neutral, PublicKeyToken=632609b4d040f6b4, processorArchitecture=MSIL">
39+
<HintPath>packages\Syncfusion.Licensing.18.4.0.32\lib\net46\Syncfusion.Licensing.dll</HintPath>
40+
</Reference>
41+
<Reference Include="Syncfusion.Shared.WPF, Version=18.4460.0.32, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89, processorArchitecture=MSIL">
42+
<HintPath>packages\Syncfusion.Shared.WPF.18.4.0.32\lib\net46\Syncfusion.Shared.WPF.dll</HintPath>
43+
</Reference>
44+
<Reference Include="Syncfusion.Tools.WPF, Version=18.4460.0.32, Culture=neutral, PublicKeyToken=3d67ed1f87d44c89, processorArchitecture=MSIL">
45+
<HintPath>packages\Syncfusion.Tools.WPF.18.4.0.32\lib\net46\Syncfusion.Tools.WPF.dll</HintPath>
46+
</Reference>
47+
<Reference Include="System" />
48+
<Reference Include="System.Data" />
49+
<Reference Include="System.Xml" />
50+
<Reference Include="Microsoft.CSharp" />
51+
<Reference Include="System.Core" />
52+
<Reference Include="System.Xml.Linq" />
53+
<Reference Include="System.Data.DataSetExtensions" />
54+
<Reference Include="System.Net.Http" />
55+
<Reference Include="System.Xaml">
56+
<RequiredTargetFramework>4.0</RequiredTargetFramework>
57+
</Reference>
58+
<Reference Include="WindowsBase" />
59+
<Reference Include="PresentationCore" />
60+
<Reference Include="PresentationFramework" />
61+
</ItemGroup>
62+
<ItemGroup>
63+
<ApplicationDefinition Include="App.xaml">
64+
<Generator>MSBuild:Compile</Generator>
65+
<SubType>Designer</SubType>
66+
</ApplicationDefinition>
67+
<Page Include="MainWindow.xaml">
68+
<Generator>MSBuild:Compile</Generator>
69+
<SubType>Designer</SubType>
70+
</Page>
71+
<Compile Include="App.xaml.cs">
72+
<DependentUpon>App.xaml</DependentUpon>
73+
<SubType>Code</SubType>
74+
</Compile>
75+
<Compile Include="MainWindow.xaml.cs">
76+
<DependentUpon>MainWindow.xaml</DependentUpon>
77+
<SubType>Code</SubType>
78+
</Compile>
79+
</ItemGroup>
80+
<ItemGroup>
81+
<Compile Include="Properties\AssemblyInfo.cs">
82+
<SubType>Code</SubType>
83+
</Compile>
84+
<Compile Include="Properties\Resources.Designer.cs">
85+
<AutoGen>True</AutoGen>
86+
<DesignTime>True</DesignTime>
87+
<DependentUpon>Resources.resx</DependentUpon>
88+
</Compile>
89+
<Compile Include="Properties\Settings.Designer.cs">
90+
<AutoGen>True</AutoGen>
91+
<DependentUpon>Settings.settings</DependentUpon>
92+
<DesignTimeSharedInput>True</DesignTimeSharedInput>
93+
</Compile>
94+
<EmbeddedResource Include="Properties\Resources.resx">
95+
<Generator>ResXFileCodeGenerator</Generator>
96+
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
97+
</EmbeddedResource>
98+
<None Include="packages.config" />
99+
<None Include="Properties\Settings.settings">
100+
<Generator>SettingsSingleFileGenerator</Generator>
101+
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
102+
</None>
103+
</ItemGroup>
104+
<ItemGroup>
105+
<None Include="App.config" />
106+
</ItemGroup>
107+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
108+
</Project>
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio Version 16
4+
VisualStudioVersion = 16.0.30709.64
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Contextmenu", "Contextmenu.csproj", "{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}"
7+
EndProject
8+
Global
9+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
10+
Debug|Any CPU = Debug|Any CPU
11+
Release|Any CPU = Release|Any CPU
12+
EndGlobalSection
13+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
14+
{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
15+
{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}.Debug|Any CPU.Build.0 = Debug|Any CPU
16+
{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}.Release|Any CPU.ActiveCfg = Release|Any CPU
17+
{1CC52B28-E4F1-48B5-9D55-3E183F98AC2B}.Release|Any CPU.Build.0 = Release|Any CPU
18+
EndGlobalSection
19+
GlobalSection(SolutionProperties) = preSolution
20+
HideSolutionNode = FALSE
21+
EndGlobalSection
22+
GlobalSection(ExtensibilityGlobals) = postSolution
23+
SolutionGuid = {ADB4FA00-FF89-4556-AD2B-2546CE403FE3}
24+
EndGlobalSection
25+
EndGlobal
Lines changed: 192 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,192 @@
1+
<Window x:Class="Contextmenu.MainWindow"
2+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
4+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
5+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
6+
xmlns:syncfusion="http://schemas.syncfusion.com/wpf"
7+
mc:Ignorable="d" WindowStartupLocation="CenterScreen"
8+
Title="DockigManager - Custom ContextMenu" Height="600" Width="800">
9+
<Grid>
10+
<syncfusion:DockingManager
11+
UseDocumentContainer="True"
12+
CollapseDefaultTabListContextMenuItems="True"
13+
CollapseDefaultContextMenuItems="True"
14+
15+
x:Name="DockingManager" >
16+
17+
<!--Adding custom context menu items for docking windows-->
18+
<syncfusion:DockingManager.DockWindowContextMenuItems>
19+
<syncfusion:CustomMenuItemCollection>
20+
<!--Adding custom context menu items-->
21+
<syncfusion:CustomMenuItem Header="DockMenu 1"/>
22+
<syncfusion:CustomMenuItem Header="DockMenu 2">
23+
24+
<!--Adding sub custom context menu items-->
25+
<syncfusion:CustomMenuItem Header="DockSubMenu 1"/>
26+
<syncfusion:CustomMenuItem Header="DockSubMenu 2"/>
27+
<syncfusion:CustomMenuItem Header="DockSubMenu 3" IsChecked="True"/>
28+
</syncfusion:CustomMenuItem>
29+
</syncfusion:CustomMenuItemCollection>
30+
</syncfusion:DockingManager.DockWindowContextMenuItems>
31+
32+
<!--Adding custom context menu items for float windows-->
33+
<syncfusion:DockingManager.FloatWindowContextMenuItems>
34+
<syncfusion:CustomMenuItemCollection>
35+
<!--Adding custom context menu items-->
36+
<syncfusion:CustomMenuItem Header="FloatMenu 1">
37+
<!--Adding sub custom context menu items-->
38+
<syncfusion:CustomMenuItem Header="FloatSubMenu 1"/>
39+
<syncfusion:CustomMenuItem Header="FloatSubMenu 2" IsChecked="True"/>
40+
<syncfusion:CustomMenuItem Header="FloatSubMenu 3">
41+
</syncfusion:CustomMenuItem>
42+
</syncfusion:CustomMenuItem>
43+
<syncfusion:CustomMenuItem Header="FloatMenu 2"/>
44+
</syncfusion:CustomMenuItemCollection>
45+
</syncfusion:DockingManager.FloatWindowContextMenuItems>
46+
47+
<!--Adding custom context menu items for tab items-->
48+
<syncfusion:DockingManager.DocumentTabItemContextMenuItems>
49+
50+
<!--Adding custom context menu items-->
51+
<syncfusion:CustomMenuItem Header="Tab Menu 1">
52+
<!--Adding sub custom context menu items-->
53+
<syncfusion:CustomMenuItem Header="TabSubMenu 1"/>
54+
<syncfusion:CustomMenuItem Header="TabSubMenu 2"/>
55+
<syncfusion:CustomMenuItem Header="TabSubMenu 3" IsChecked="True">
56+
57+
<!--Adding sub custom context menu items for 'SubMenu 3'-->
58+
<syncfusion:CustomMenuItem Header="Level 2"/>
59+
</syncfusion:CustomMenuItem>
60+
</syncfusion:CustomMenuItem>
61+
<syncfusion:CustomMenuItem Header="Tab Menu 2"/>
62+
</syncfusion:DockingManager.DocumentTabItemContextMenuItems>
63+
64+
<!--Adding custom tab list context menu items-->
65+
<syncfusion:DockingManager.TabListContextMenuItems>
66+
67+
<!--Adding custom context menu items-->
68+
<syncfusion:CustomMenuItem Header="CustomMenu 1"/>
69+
<syncfusion:CustomMenuItem Header="CustomMenu 2">
70+
71+
<!--Adding sub custom context menu items-->
72+
<syncfusion:CustomMenuItem Header="ListSubMenu 1"/>
73+
<syncfusion:CustomMenuItem Header="ListSubMenu 2" IsChecked="True"/>
74+
<syncfusion:CustomMenuItem Header="ListSubMenu 3">
75+
76+
<!--Adding sub custom context menu items for 'SubMenu 3'-->
77+
<syncfusion:CustomMenuItem Header="Level 2"/>
78+
</syncfusion:CustomMenuItem>
79+
</syncfusion:CustomMenuItem>
80+
</syncfusion:DockingManager.TabListContextMenuItems>
81+
<ContentControl
82+
Name="Output"
83+
syncfusion:DockingManager.Header="Output"
84+
syncfusion:DockingManager.SideInDockedMode="Bottom"
85+
syncfusion:DockingManager.CollapseDefaultContextMenuItemsInDock="True"
86+
syncfusion:DockingManager.DesiredHeightInDockedMode="150">
87+
88+
<!-- Output docking window -->
89+
90+
</ContentControl>
91+
92+
<ContentControl
93+
Name="FindResults"
94+
syncfusion:DockingManager.Header="Find Results"
95+
syncfusion:DockingManager.SideInDockedMode="Tabbed"
96+
syncfusion:DockingManager.TargetNameInDockedMode="Output" >
97+
98+
<!-- Find Results docking window -->
99+
100+
</ContentControl>
101+
102+
<ContentControl
103+
Name="ErrorList"
104+
syncfusion:DockingManager.Header="Error List"
105+
syncfusion:DockingManager.SideInDockedMode="Tabbed"
106+
syncfusion:DockingManager.TargetNameInDockedMode="Output" >
107+
108+
<!-- Error List docking window -->
109+
110+
</ContentControl>
111+
112+
<ContentControl
113+
Name="SolutionExplorer"
114+
syncfusion:DockingManager.Header="Solution Explorer"
115+
syncfusion:DockingManager.SideInDockedMode="Right"
116+
syncfusion:DockingManager.DesiredWidthInDockedMode="200">
117+
118+
<!-- Solution Explorer docking window -->
119+
120+
</ContentControl>
121+
122+
<ContentControl
123+
Name="ClassView"
124+
syncfusion:DockingManager.Header="Class View"
125+
syncfusion:DockingManager.SideInDockedMode="Tabbed"
126+
syncfusion:DockingManager.TargetNameInDockedMode="SolutionExplorer" >
127+
128+
<!-- Class View docking window -->
129+
130+
</ContentControl>
131+
132+
133+
<ContentControl
134+
Name="Properties"
135+
syncfusion:DockingManager.Header="Properties Window"
136+
syncfusion:DockingManager.SideInDockedMode="Tabbed"
137+
syncfusion:DockingManager.TargetNameInDockedMode="SolutionExplorer" >
138+
139+
<!-- Properties docking window -->
140+
141+
</ContentControl>
142+
143+
<ContentControl
144+
Name="Toolbox"
145+
syncfusion:DockingManager.Header="Toolbox"
146+
syncfusion:DockingManager.State="Dock"
147+
syncfusion:DockingManager.DesiredWidthInDockedMode="180">
148+
149+
<!-- Toolbox docking window -->
150+
151+
</ContentControl>
152+
153+
<ContentControl
154+
Name="doument1"
155+
syncfusion:DockingManager.Header="MainWindow.xaml"
156+
syncfusion:DockingManager.State="Document"
157+
syncfusion:DockingManager.ShowCloseAllButThisMenuItem="False"
158+
syncfusion:DockingManager.ShowCloseAllMenuItem="False"
159+
syncfusion:DockingManager.ShowCloseMenuItem="False"
160+
syncfusion:DockingManager.CollapseDefaultContextMenuItemsInDocumentTab="True">
161+
162+
<!-- Document window -->
163+
164+
</ContentControl>
165+
166+
<ContentControl
167+
Name="doument2"
168+
syncfusion:DockingManager.Header="MainWindow.xaml.cs"
169+
syncfusion:DockingManager.State="Document"
170+
syncfusion:DockingManager.ShowCloseAllButThisMenuItem="False"
171+
syncfusion:DockingManager.ShowCloseAllMenuItem="False"
172+
syncfusion:DockingManager.ShowCloseMenuItem="False"
173+
syncfusion:DockingManager.CollapseDefaultContextMenuItemsInDocumentTab="True">
174+
175+
<!-- Document window -->
176+
177+
</ContentControl>
178+
179+
180+
<ContentControl
181+
syncfusion:DockingManager.Header="Float Window"
182+
syncfusion:DockingManager.CollapseDefaultContextMenuItemsInFloat="True"
183+
syncfusion:DockingManager.FloatingWindowRect="550,200,250,250"
184+
syncfusion:DockingManager.State="Float">
185+
186+
<!-- Float window -->
187+
188+
</ContentControl>
189+
</syncfusion:DockingManager>
190+
191+
</Grid>
192+
</Window>
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Linq;
4+
using System.Text;
5+
using System.Threading.Tasks;
6+
using System.Windows;
7+
using System.Windows.Controls;
8+
using System.Windows.Data;
9+
using System.Windows.Documents;
10+
using System.Windows.Input;
11+
using System.Windows.Media;
12+
using System.Windows.Media.Imaging;
13+
using System.Windows.Navigation;
14+
using System.Windows.Shapes;
15+
16+
namespace Contextmenu
17+
{
18+
/// <summary>
19+
/// Interaction logic for MainWindow.xaml
20+
/// </summary>
21+
public partial class MainWindow : Window
22+
{
23+
public MainWindow()
24+
{
25+
InitializeComponent();
26+
}
27+
}
28+
}

0 commit comments

Comments
 (0)