--- 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
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.