全て
| カテゴリ未分類
| 通常
| 数学
| 投資
| 副業
| 転職・就職
| ブログ
| 株Stock
| VBA
| SharePoint
| REST API
| RenderListDataAsStream
| PowerAutomateDesktop
| Graph API
| PowerApps
| PowerAutomate
| PowerFx
| OfficeScriptオフィススクリプト
| PowerAutomate日時Excel日時相互関係
| PowerShell
| Dataverse
| UiPath
| OneDrive
| LINQ
| VB.NET
| C#.NET
| WPFC#.NET
| Git
カテゴリ:C#.NET
DataGridのセルにツールチップを表示し、その内容を動的に変更する方法を示します。 csharp Copy code using System.Windows; using System.Windows.Controls; using System.Windows.Controls.Primitives; public class DataGridToolTipBehavior { public static readonly DependencyProperty ToolTipProperty = DependencyProperty.RegisterAttached("ToolTip", typeof(string), typeof(DataGridToolTipBehavior), new FrameworkPropertyMetadata(null, OnToolTipChanged)); public static string GetToolTip(DependencyObject obj) { return (string)obj.GetValue(ToolTipProperty); } public static void SetToolTip(DependencyObject obj, string value) { obj.SetValue(ToolTipProperty, value); } private static void OnToolTipChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (d is DataGridCell cell) { cell.MouseEnter += Cell_MouseEnter; cell.MouseLeave += Cell_MouseLeave; } } private static void Cell_MouseEnter(object sender, System.Windows.Input.MouseEventArgs e) { if (sender is DataGridCell cell) { string toolTipContent = GetToolTip(cell); if (!string.IsNullOrEmpty(toolTipContent)) { ToolTip toolTip = new ToolTip(); toolTip.Content = toolTipContent; cell.ToolTip = toolTip; toolTip.IsOpen = true; } } } private static void Cell_MouseLeave(object sender, System.Windows.Input.MouseEventArgs e) { if (sender is DataGridCell cell) { cell.ToolTip = null; } } } このコードでは、DataGridのセルに表示されるツールチップの内容を動的に変更できます。使い方は、DataGridのセルにToolTipプロパティを設定し、その値を動的に変更するだけです。以下はXAMLでの使用例です。 xml Copy code <DataGrid> <DataGrid.Columns> <DataGridTextColumn Header="Name" Binding="{Binding Name}"> <DataGridTextColumn.CellStyle> <Style TargetType="DataGridCell"> <Setter Property="local:DataGridToolTipBehavior.ToolTip" Value="{Binding AdditionalInfo}" /> </Style> </DataGridTextColumn.CellStyle> </DataGridTextColumn> </DataGrid.Columns> </DataGrid> このようにすることで、DataGridのセルにマウスを重ねると、セルに設定されたToolTipプロパティの値が表示されます。 お気に入りの記事を「いいね!」で応援しよう
Last updated
2024.03.07 04:29:39
[C#.NET] カテゴリの最新記事
|