Hi!
I have implemented the solution described here: http://community.infragistics.com/forums/p/43348/238054.aspx#238054, adding "row details" when the user clicks on the record selector arrow. I need to know which event is getting fired, however, when the row details are expanded? I want to calculate some results to display, but I don't want this to happen if the user clicks anywhere else on the record (without expanding it). So far I've tried Grid_RecordActivated, Grid_RecordActivatedDirect, and Grid_SelectedItemsChanged, but they all fire regardless of where on the row the user clicks.
I know that the cellvaluepresenter is set to visible when the following event is triggered, but I do not know how to set this in the XAML on the grid.
<DataTrigger Binding="{Binding IsSelected}" Value="True">
<Setter Property="Visibility" Value="Visible" />
</DataTrigger>
Thanks,
Martin
I was able to solve it using this code:
Private Sub Grid_SelectedItemsChanged(sender As System.Object, e As Infragistics.Windows.DataPresenter.Events.SelectedItemsChangedEventArgs)
Dim temp As DataRecord = CType(sender, XamDataGrid).ActiveRecord
If temp.Cells("Details").Record.IsSelected = True Then
'execute code here
End If
End Sub
However, how do I remove the extra spacing that's added between each row (where the row details field is - I get that this is not an actual line spacing since my code is triggered when I click "between" the rows)?
Hello Martin,
I was looking into your posts and I believe that the space you are referring is created between the CellValuePrsenters within the DataRecordPresenter. In order to terminate this empty space between I can suggest you set a different margin for every CellValuePresenter. You can achieve this by creating a common style for all CellValuePresneters like this:
<Style TargetType="{x:Type igDP:CellValuePresenter}">
<Setter Property="Margin" Value="0,-2,0,-2"/>
</Style>
If this doesn’t suit your scenario, please let me know.