--- lang: ja-jp breaks: true --- # WPF `DataGrid` に `ModernWPF` を適用する 2022-08-30   ## DataGridに右クリックメニューを付加   ## csproj ```xml= <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>net7.0-windows</TargetFramework> <Nullable>disable</Nullable> <UseWPF>true</UseWPF> </PropertyGroup> <ItemGroup> <PackageReference Include="ModernWpfUI" Version="0.9.7-preview.2" /> </ItemGroup> </Project> ``` ## App.xaml ```xaml= <Application x:Class="WPF_ModernWPF_DataGrid.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:WPF_ModernWPF_DataGrid" StartupUri="MainWindow.xaml" xmlns:ui="http://schemas.modernwpf.com/2019" > <Application.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <!-- <ui:ThemeResources RequestedTheme="Light" /> <ui:ThemeResources RequestedTheme="Dark" /> --> <ui:ThemeResources /> <ui:XamlControlsResources /> </ResourceDictionary.MergedDictionaries> </ResourceDictionary> </Application.Resources> </Application> ``` ## MainWindow.xaml ```xaml= <Window x:Class="WPF_ModernWPF_DataGrid.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WPF_ModernWPF_DataGrid" mc:Ignorable="d" Title="MainWindow" Height="450" Width="800" xmlns:ui="http://schemas.modernwpf.com/2019" ui:WindowHelper.UseModernWindowStyle="True" > <Window.DataContext> <viewModels:PostalCodeViewModel /> </Window.DataContext> <Grid> <DataGrid ItemsSource="{Binding PostalCode_IEnumerable_PostalCodeRow, IsAsync=True}" AutoGenerateColumns="True" AutoGeneratingColumn="DataGrid_AutoGeneratingColumn" VirtualizingStackPanel.IsVirtualizing="True" VirtualizingStackPanel.VirtualizationMode="Standard" EnableColumnVirtualization="True" EnableRowVirtualization="True" CanUserAddRows="False" CanUserDeleteRows="False" CanUserReorderColumns="True" CanUserResizeRows="True" CanUserSortColumns="True" SelectionMode="Extended" SelectionUnit="FullRow" ScrollViewer.PanningMode="VerticalOnly" ScrollViewer.IsDeferredScrollingEnabled="True" ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Visible" > <DataGrid.ContextMenu> <ContextMenu> <MenuItem Name="contextmenu" Header="詳細を表示" /> </ContextMenu> </DataGrid.ContextMenu> </DataGrid> </Grid> </Window> ``` ###### tags: `WPF` `DataGrid` `ModernWPF`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up