FieldSettingsのMergedCellEvaluatorプロパティにIMergedCellEvaluatorインターフェースを実装したクラスのインスタンスを指定してください。
IMergedCellEvaluatorインターフェースを実装したクラスでは、ShouldCellsBeMergedで結合するロジックをコーディングし、GetMergedCellValueで結合後に表示するテキスト文字列を返してください。
<Window.Resources> <local:MyEvaluator x:Key="myEvaluator"/> </Window.Resources> <Grid> <igDP:XamDataGrid DataSource="{Binding People}"> <igDP:XamDataGrid.FieldLayouts> <igDP:FieldLayout> <igDP:Field Name="ID" Label="ID"/> <igDP:Field Name="Name" Label="Name"> <igDP:Field.Settings> <igDP:FieldSettings MergedCellMode="Always" MergedCellEvaluator="{StaticResource myEvaluator}"/> </igDP:Field.Settings> </igDP:Field> </igDP:FieldLayout> </igDP:XamDataGrid.FieldLayouts> </igDP:XamDataGrid> </Grid>
public class MyEvaluator : IMergedCellEvaluator { public object GetMergedCellValue(DataRecord record, Field field) { return (record.DataItem as Person).Name; } public bool ShouldCellsBeMerged(DataRecord record, DataRecord adjacentRecord, Field field) { return (record.DataItem as Person).ID == (adjacentRecord.DataItem as Person).ID; } }