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.
Hi Elena,
Thanks, I modified it slightly and used the style below to get the line-soacing to go away. I think you misunderstood me regarding the highlighting, however. I do want the default highlighting, but when modifying the grid using the style below, the default highlighting disappears. Instead I get a dark blue highlighting. It's not a big issue, but if you do come across a way to achieve this that'd be appreciated.
Regards,Martin
<igDP:XamDataGrid.Resources> <Style TargetType="{x:Type igDP:CellValuePresenter}"> <Setter Property="Padding" Value="0"/> <Setter Property="Margin" Value="0,0,0,-5"/> </Style></igDP:XamDataGrid.Resources>
I run your sample that you provide me with and I am not able to reproduce the different coloring. Could you please attach a screenshot that shows the different coloring, so I can be sure that we are looking on the same thing.
Thank you.
This is with the code to remove the spacing between rows attached to the bottom of my last post:
This is without:
I downloaded the latest service release. Thanks for your help.
I test this with the latest service releases of 11.1 and I was not able to reproduce the different coloring, so this may be a fixed issue.
If you still have any concerns after installing the latest release, please let me know.
Interesting, I just downloaded the latest service release a couple of days ago. Anyhow, doesn't really matter, it still looks pretty good.