getGenericValue<V> method
Returns the value for a binding.
This uses the key that was set up with the binding. Additionally
a converterParameter can be passed that will be send to a value
converter if supplied with the binding.
Generic T is the type to be returned.
Implementation
V getGenericValue<V>(String key, {Object? converterParameter}) {
V returnValue;
Binding binding = _getBinding(key);
if (binding.bindingDirection == BindingDirection.OneTime &&
!(binding.originalValue is _OriginalValueNeverSet)) {
returnValue = binding.originalValue as V;
} else if (binding.valueConverter == null) {
returnValue = binding.source.getGenericValue<V>(binding.sourceProperty);
} else {
returnValue = binding.valueConverter!.convert(
binding.source, binding.source.getValue(binding.sourceProperty),
parameter: converterParameter) as V;
}
if (binding.originalValue is _OriginalValueNeverSet &&
binding.bindingDirection == BindingDirection.OneTime) {
binding.originalValue = returnValue;
}
return returnValue;
}