[英]Infragistics XamDataGrid Group By on load in WPF
如何从Infragistics中为XamDataGrid的给定属性设置“加载时分组依据”,并通过禁用折叠组的功能使此视图不折叠? 如果可能的话,我也会知道如何隐藏“分组依据”小按钮。
我的环境是WPF和C#。
尝试这个,
在Xaml中
<igDP:XamDataGrid x:Name="xdgSample" DataSource="{Binding SampleCollection}" InitializeRecord="xdgSample_InitializeRecord">
<igDP:XamDataGrid.FieldLayouts>
<igDP:FieldLayout>
<igDP:Field Name="field1" Label="Field1"/>
<igDP:Field Name="field2" Label="Field2"/>
<igDP:Field Name="field3" Label="Field3"/>
<igDP:Field Name="field4" Label="Field4"/>
<igDP:Field Name="field5" Label="Field5"/>
</igDP:FieldLayout>
</igDP:XamDataGrid.FieldLayouts>
<igDP:XamDataGrid.FieldLayoutSettings>
<igDP:FieldLayoutSettings AllowFieldMoving="No"
AllowDelete="False"
AutoGenerateFields="False"
AutoFitMode="ExtendLastField"
SelectionTypeRecord="Single"
FilterUIType="LabelIcons"
GroupByExpansionIndicatorVisibility="Collapsed">
</igDP:FieldLayoutSettings>
</igDP:XamDataGrid.FieldLayoutSettings>
</igDP:XamDataGrid>
在代码背后,
Private ObservableCollection<SampleBO> sampleCollection;
Public ObservableCollection<SampleBO> SampleCollection
{
get
{
return this.sampleCollection;
}
}
您可以将下面的代码放在“窗口已加载”事件或“构造函数”中,以加载和分组数据,
this.sampleCollection = your collection/List;
this.OnPropertyChange("SampleCollection");
this.xdgSample.FieldLayouts[0].SortedFields.Add(new FieldSortDescription
{
IsGroupBy = true,
Field = this.xamInputList.FieldLayouts[0].Fields["field2"],
Direction = System.ComponentModel.ListSortDirection.Ascending
});
this.xdgSample.FieldLayoutSettings.HeaderPlacement = HeaderPlacement.OnTopOnly;
this.xdgSample.FieldLayoutSettings.HeaderPlacementInGroupBy = HeaderPlacementInGroupBy.WithDataRecords;
同样,对于扩展组,请使用以下事件,最初用于扩展组。
private void xdgSample_InitializeRecord(object sender, Infragistics.Windows.DataPresenter.Events.InitializeRecordEventArgs e)
{
if (e.Record.NestingDepth == 0)
{
e.Record.IsExpanded = true;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.