Show popup with binding on DataGrid row mouse over
<p>When a user hovers a row in a DataGrid I want to show a popup with some information about this row.
I've stuck how to bind DataTrigger to every row in dynamically populated DataGrid table.</p>

<p>I've found solutions only for tooltips but tooltips don't suit me because I need to have more control on popup (don't hide it immediately when a user moved a mouse cursor to another control, ability to click in popup with mouse etc.)</p>

<p>Here is XAML code where I'm trying to bind popup DataTrigger to every DataGrid row (I've put comments with questions in the code below)</p>

<pre><code>&lt;Window x:Class="VKPN.UI.Windows.TestWindow"
        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:VKPN.UI.Windows"
        mc:Ignorable="d"
        Title="TestWindow" SizeToContent="WidthAndHeight"&gt;
    &lt;Grid&gt;
        &lt;Popup Name="UserPopup" Placement="RelativePoint" HorizontalOffset="-5" VerticalOffset="0"
                                   PlacementTarget="{Binding ElementName=ThisUserControl}"&gt;
            &lt;Popup.Style&gt;
                &lt;Style TargetType="Popup"&gt;
                    &lt;Style.Triggers&gt;
                        &lt;!--How to specify binding to every DataGridTable row below?--&gt;
                        &lt;DataTrigger Binding="{Binding ElementName=DataGridTable, Path=???}" Property="IsMouseOver" Value="True"&gt;
                            &lt;Setter Property="IsOpen" Value="True"/&gt;
                        &lt;/DataTrigger&gt;
                    &lt;/Style.Triggers&gt;
                &lt;/Style&gt;
            &lt;/Popup.Style&gt;
            &lt;Label&gt;
                &lt;Label.Style&gt;
                &lt;Style TargetType="Label"&gt;
                    &lt;Style.Triggers&gt;
                        &lt;!--How to specify binding to every DataGridTable row below?--&gt;
                        &lt;DataTrigger Binding="{Binding ElementName=???}" Property="IsMouseOver" Value="True"&gt;
                            &lt;!--DataGrid row has a column "id" which I want to show in the label. Did I do it correct below?--&gt;
                            &lt;Setter Property="Content" Value="{Binding RelativeSource={RelativeSource Mode=Self}, Path=DataContext.id}"/&gt;
                        &lt;/DataTrigger&gt;
                    &lt;/Style.Triggers&gt;
                &lt;/Style&gt;
                &lt;/Label.Style&gt;
            &lt;/Label&gt;
        &lt;/Popup&gt;
            &lt;DataGrid Name="DataGridTable" ItemsSource="{Binding}" IsReadOnly="True" ScrollViewer.CanContentScroll="True" ScrollViewer.VerticalScrollBarVisibility="Auto" ScrollViewer.HorizontalScrollBarVisibility="Auto"&gt;
            &lt;/DataGrid&gt;
    &lt;/Grid&gt;
&lt;/Window&gt;
</code></pre>

<p>Please help me to figure out how to do it.</p>