public SingleRecordDatabaseCellViewModel(int columnIndex, DatabaseColumnJson columnDefinition, DatabaseEntityViewModel parent, DatabaseEntity parentEntity, IDatabaseField tableField, IParameterValue parameterValue) : base(parentEntity) { ColumnIndex = columnIndex * 2; CanBeNull = columnDefinition.CanBeNull; IsReadOnly = columnDefinition.IsReadOnly; ColumnName = columnDefinition.Name; Parent = parent; TableField = tableField; ParameterValue = parameterValue; if (UseItemPicker) { AutoDispose(ParameterValue.ToObservable().Subscribe(_ => RaisePropertyChanged(nameof(OptionValue)))); } if (UseFlagsPicker) { AutoDispose(ParameterValue.ToObservable().Subscribe(_ => RaisePropertyChanged(nameof(AsLongValue)))); } OriginalValueTooltip = tableField.IsModified ? "Original value: " + parameterValue.OriginalString : null; AutoDispose(parameterValue.ToObservable("Value").Skip(1).SubscribeAction(_ => { Parent.RaiseChanged(this, tableField.FieldName); OriginalValueTooltip = tableField.IsModified ? "Original value: " + parameterValue.OriginalString : null; RaisePropertyChanged(nameof(OriginalValueTooltip)); RaisePropertyChanged(nameof(AsBoolValue)); RaisePropertyChanged(nameof(IsModified)); })); }
public SingleRecordDatabaseCellViewModel(int columnIndex, string columnName, ICommand action, DatabaseEntityViewModel parent, DatabaseEntity entity, string label) : base(entity) { Parent = parent; ColumnIndex = columnIndex * 2; CanBeNull = false; IsReadOnly = false; ColumnName = columnName; OriginalValueTooltip = null; ActionCommand = action; ActionLabel = label; }
public SingleRecordDatabaseCellViewModel(int columnIndex, string columnName, ICommand action, DatabaseEntityViewModel parent, DatabaseEntity entity, System.IObservable <string> label) : base(entity) { Parent = parent; ColumnIndex = columnIndex * 2; CanBeNull = false; IsReadOnly = false; ColumnName = columnName; OriginalValueTooltip = null; ActionCommand = action; AutoDispose(label.SubscribeAction(s => { ActionLabel = s; RaisePropertyChanged(nameof(ActionLabel)); })); }