我想双向绑定两个不同类型的属性。
我有一个界面:
interface Gateway<F, T> {
T to(F item);
F from(T item);
}
这使我可以将一种类型的对象转换为另一种类型的对象。
最理想的是,我有一个功能:
void bindBidirectional(Property<F> first, Gateway<F, T> converter, Property<T> second) {
...
}
这将使我能够轻松地双向绑定两个属性,只要我有一个对象就可以将一种类型的值映射到另一种类型的值,然后将其映射回来。
我将如何实现这种绑定?
注意:There are already这种绑定 的便捷方法,只要Property
类型之一是{{1} } 。我想要一个更通用的方法,类似于此方法,它将允许我在任意两种类型之间进行转换。