Files
wg_cpso/CaeKnowledge/View/ViewProcessingJob.cs
2026-03-26 06:50:22 +08:00

55 lines
1.5 KiB
C#

using CaeKnowledge.Data;
using System.Collections.Generic;
using System.ComponentModel;
using System.Runtime.CompilerServices;
// ReSharper disable ConvertToAutoPropertyWhenPossible
namespace CaeKnowledge.View
{
public class ViewProcessingJob: INotifyPropertyChanged
{
private readonly ProcessingJob _base;
public ViewProcessingJob(ProcessingJob @base)
{
_base = @base;
}
[DisplayName("Step名称")]
public string StepName => _base.StepName;
[DisplayName("Surface名称")]
public string SurfaceName => _base.SurfaceName;
public double X => _base.X;
public double Y => _base.Y;
public double Z => _base.Z;
public double Fx => _base.Fx;
public double Fy => _base.Fy;
public double Fz => _base.Fz;
[Browsable(false)]
public ProcessingJob Base => _base;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
{
if (EqualityComparer<T>.Default.Equals(field, value)) return false;
field = value;
OnPropertyChanged(propertyName);
return true;
}
}
}