2つ(またはそれ以上)のListViewが並んでいます。それぞれの選択されたインデックスが常に同じになるように、それらを1つとして機能させる必要があります。
2 に答える
1
これはうまくいくはずです:)、多分。
var lv1 = ListView {
}
var lv2 = ListView {
}
var onSync = false;
var sel1 = bind lv1.selectedIndex on replace {
if (not onSync) {
onSync = true;
lv2.select(sel1);
onSync = false;
}
}
var sel2 = bind lv2.selectedIndex on replace {
if (not onSync) {
onSync = true;
lv1.select(sel2);
onSync = false;
}
}
于 2010-04-27T11:56:16.263 に答える
0
「逆にバインド」はオプションのようです:
var a;
var b = bind a with inverse;
単純な式でのみ機能します。より複雑なものは警告/エラーを生成します。
ListViewのselectedIndexが公開されているためではないことを除いて、読み取り可能です(修正に感謝します)。
あなたはこのようにそれをしなければならないでしょう:
var lv1 = ListView {
}
var lv2 = ListView {
}
var sel1 = bind lv1.selectedIndex on replace {
lv2.select(sel1);
}
var sel2 = bind lv2.selectedIndex on replace {
lv1.select(sel1);
}
また、余分なselect()呼び出しを避けるために、あちこちにifを追加することもできます。
于 2010-04-22T14:53:08.067 に答える