文章分類/

Infragistics|Ultimate UI for WPF|XamDataGrid 使用其他欄位中的資訊合併儲存格

尚無瀏覽量
2023-09-28 更新

infragistics log

我正在使用“名稱”列合併單元格,但我會根據它們是否具有相同的 ID 來決定是否合併。

請在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;
    }
}

快速跳轉目錄

✦ 群昱 AccessSoft 你的全面軟體解決方案 ✦

身為全球眾多知名軟體在台灣合作夥伴,歡迎諮詢你需要的軟體服務!

Picture of 軟體專家
軟體專家

群昱作為全球知名軟體推薦合作夥伴,致力於提供更多軟體解決方案給你!

更多軟體新知

立即詢價

請留下完整資訊,以便我們提供精確的服務內容給你。

詢價資訊