using System.Collections.Generic; using ExtendedGrid.Microsoft.Windows.Controls; namespace RecipeEditorLib.RecipeModel.Params { public interface IParam { #region Properties /// /// 返回当前参数所属列名称。 /// string DisplayName { get; } /// /// 返回ControlName。 /// string Name { get; } /// /// 返回父级配方步骤。 /// RecipeStep Parent { get; } /// /// 当前参数在表格中的所属行。 /// DataGridRow RowOwner { get; set; } /// /// 当前参数在表格中的所属列。 /// DataGridColumn ColumnOwner { get; set; } /// /// 返回前序参数。 /// IParam Previous { get; set; } /// /// 返回后序参数。 /// IParam Next { get; set; } /// /// 返回当前参数是否已保存。 /// bool IsSaved { get; set; } /// /// 返回当前参数的值是否和前序参数相等。 /// bool IsEqualsToPrevious { get; } /// /// 返回当前参数是否校验成功。 /// bool IsValidated { get; } /// /// 返回当前参数校验错误信息。 /// string ValidationError { get; } /// /// 返回是否高亮显示当前参数。 /// bool IsHighlighted { get; } /// /// 返回是否隐藏参数的值。 /// bool IsHideValue { get; set; } #endregion #region Methods /// /// 将参数链表转换为数组。 /// /// List Flatten(); /// /// 校验用户输入值。 /// void Validate(); /// /// 设置为已保存状态。 /// void Save(); /// /// 获取当前参数的数值。 /// /// object GetValue(); /// /// 高亮显示当前参数。 /// void Highlight(); /// /// 取消高亮显示。 /// void ResetHighlight(); #endregion } }