I have a datagrid on my wpf and inside it is created tow button and I'd like to show then only when the mouse is over the datagrid I bealieve for me to make it I'll need to add an Event to mouse over on the rows of this grid bellow is my DataGrid code
<DataGrid Grid.Row="1" GridLinesVisibility="None" AlternationCount="2" HorizontalAlignment="Left" Height="auto" VerticalAlignment="Stretch" BorderThickness="0" Name="dgUsers" ItemsSource="{Binding NotasSincronizadas}" Margin="0 0 0 0"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Hidden"
>
<DataGrid.Resources>
<Style TargetType="{x:Type DataGridRow}">
<Style.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="local:WaterMarkTextHelperl.HasText" Value="False"/>
<Condition Property="IsFocused" Value="True"/>
</MultiTrigger.Conditions>
</MultiTrigger>
</MultiTrigger>
</DataGrid.Resources>
<DataGrid.Columns>
<DataGridCheckBoxColumn x:Name="col0" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}">
<DataGridCheckBoxColumn.HeaderTemplate>
<DataTemplate>
<CheckBox Name="chkSelectAll" ></CheckBox>
</DataTemplate>
</DataGridCheckBoxColumn.HeaderTemplate>
</DataGridCheckBoxColumn>
<DataGridTemplateColumn Width="100" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}">
<DataGridTemplateColumn.HeaderTemplate>
<DataTemplate>
<Label Width="100" HorizontalContentAlignment="Center">NÚMERO</Label>
</DataTemplate>
</DataGridTemplateColumn.HeaderTemplate>
<DataGridTemplateColumn.CellTemplate >
<DataTemplate>
<Grid Width="100">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="50*"></ColumnDefinition>
<ColumnDefinition Width="50*" x:Name="columBtAuto"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Label Grid.Column="0" Content="{Binding Path=CNS_NUMERO_NOTA}"></Label>
<Grid Grid.Column="1" Width="50" Height="20">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<Button ToolTip="Manifestar" Grid.Column="0" Tag="{Binding Path=CNS_NUMERO_NOTA}" Style="{StaticResource buttonTransparent}">
<fa:ImageAwesome Icon="File" Width="12"></fa:ImageAwesome>
</Button>
<Button ToolTip="Imprimir" Grid.Column="1" Tag="{Binding Path=CNS_NUMERO_NOTA}" Style="{StaticResource buttonTransparent}">
<fa:ImageAwesome Icon="Print" Width="12"></fa:ImageAwesome>
</Button>
</Grid>
</Grid>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn x:Name="br_numero" Header="NÚMERO" Width="100" Binding="{Binding CNS_NUMERO_NOTA}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" />
<DataGridTextColumn x:Name="br_serie" Header="SERIE" Width="80" Binding="{Binding CNS_SERIE}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" ></DataGridTextColumn>
<DataGridTextColumn x:Name="br_data_de_emissao" Header="DATA" Width="120" Binding ="{Binding Path=CNS_DATA_EMISSAO, StringFormat=dd-MM-yyyy}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}"></DataGridTextColumn>
<DataGridTextColumn x:Name="br_cnpj" Width="150" Header="CNPJ" Binding ="{Binding Path=CNS_CNPJ, StringFormat={}{0:##\###\###\/####-##}}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" />
<DataGridTextColumn x:Name="br_empresa_nome" Width="400" Header="EMPRESA" Binding ="{Binding CNS_NOME_FANTASIA}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" />
<DataGridTextColumn x:Name="br_valor" Width="90" Header="VALOR" Binding ="{Binding Path=CNS_VALOR_TOTAL, StringFormat={}{0:#.##}}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" />
<DataGridTextColumn x:Name="br_chave_de_acesso" Width="350" Header="CHAVE DE ACESSO" Binding ="{Binding Path=CNS_VALOR_TOTAL, StringFormat={}{0:#.##}}" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}" />
</DataGrid.Columns>
</DataGrid>
Is there some way to put these events in the row ?
I am trying to use this code
<Style TargetType="{x:Type DataGridRow}">
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="local:HideShow.Somefunction" Value="False"/>
<Condition Property="IsFocused" Value="True"/>
</MultiTrigger.Conditions>
</MultiTrigger>
</Style>
But it didn't work as well
I finally realized how to do that Jus need to use EventSetter instead of triggers
as the code bellow
<EventSetter Event="MouseEnter" Handler="Row_MouseEnter"/>
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.