|
@@ -9,9 +9,10 @@ using System.Threading;
|
|
|
|
|
|
namespace PRSDesktop
|
|
|
{
|
|
|
- public class JobFormGrid : DynamicDataGrid<JobForm>, IMasterDetailControl<Job,JobForm>, IDataModelSource
|
|
|
+ public class JobFormGrid : DynamicEntityFormGrid<JobForm, Job, JobLink>, IMasterDetailControl<Job,JobForm>, IDataModelSource
|
|
|
{
|
|
|
-
|
|
|
+ protected override Job Entity { get => Master; set => Master = value; }
|
|
|
+
|
|
|
public Job? Master { get; set; }
|
|
|
|
|
|
public Filter<JobForm> MasterDetailFilter => (Master?.ID ?? Guid.Empty) != Guid.Empty
|
|
@@ -30,7 +31,6 @@ namespace PRSDesktop
|
|
|
|
|
|
public JobFormGrid()
|
|
|
{
|
|
|
- ActionColumns.Add(new DynamicImageColumn(PRSDesktop.Resources.pencil.AsBitmapImage(), EditAction));
|
|
|
}
|
|
|
|
|
|
protected override void DoReconfigure(DynamicGridOptions options)
|
|
@@ -40,19 +40,6 @@ namespace PRSDesktop
|
|
|
options.FilterRows = true;
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- private bool EditAction(CoreRow? row)
|
|
|
- {
|
|
|
- if (row == null) return false;
|
|
|
-
|
|
|
- if(DynamicFormEditWindow.EditDigitalForm<JobForm>(row.Get<JobForm, Guid>(x => x.ID), out var dataModel))
|
|
|
- {
|
|
|
- dataModel.Update(null);
|
|
|
- return true;
|
|
|
- }
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
protected override void Reload(
|
|
|
Filters<JobForm> criteria, Columns<JobForm> columns, ref SortOrder<JobForm>? sort,
|
|
|
CancellationToken token, Action<CoreTable?, Exception?> action)
|
|
@@ -66,6 +53,16 @@ namespace PRSDesktop
|
|
|
return base.CanCreateItems() && Master != null;
|
|
|
}
|
|
|
|
|
|
+ protected override void OnFormCreated(JobForm form)
|
|
|
+ {
|
|
|
+ base.OnFormCreated(form);
|
|
|
+
|
|
|
+ if (DynamicFormEditWindow.EditDigitalForm(form, out var dataModel))
|
|
|
+ {
|
|
|
+ dataModel.Update(null);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public override JobForm CreateItem()
|
|
|
{
|
|
|
var result = base.CreateItem();
|