DynamicGridEnumLookupColumn.cs 727 B

123456789101112131415161718192021
  1. using System;
  2. using System.Collections.Generic;
  3. using InABox.Core;
  4. using Syncfusion.UI.Xaml.Grid;
  5. namespace InABox.DynamicGrid;
  6. public class DynamicGridEnumLookupColumn<TEntity> : DynamicGridComboBoxColumn<TEntity, EnumLookupEditor> where TEntity : BaseObject
  7. {
  8. protected override void Configure(GridComboBoxColumn column, EnumLookupEditor editor)
  9. {
  10. var lookups = editor.Values(typeof(TEntity), Definition.ColumnName, null).ToDataTable();
  11. column.SelectedValuePath = lookups.Columns[0].ColumnName;
  12. column.DisplayMemberPath = "Display";
  13. column.ItemsSource = lookups.DefaultView;
  14. }
  15. public DynamicGridEnumLookupColumn(DynamicGridColumn definition) : base(definition)
  16. {
  17. }
  18. }