0

カスタム コントロールがあります。ListItemBox のセットを定義する Listbox で、それぞれに RadioButton が含まれています。

リストは動的に読み込まれ、コントロールの ItemsSource に入力されるため、これらのそれぞれに TabIndex を個別に設定していません。むしろ、ListBox 自体に KeyboardNavigation="Local" を設定しました。

ラジオボタンを選択するまで、これは正常に機能します(フォームをタブで移動し、リストボックスをヒットし、その中の各項目を順番にタブで移動し、フォームの残りの部分をタブで移動し続けます)。

ラジオ ボタンを選択した後、リスト ボックスを再度タブで移動しようとすると、最初のタブで選択した項目に移動し、リスト内のその項目の前に表示されるすべての項目がスキップされます。

この悪い動作が発生しないようにする方法はありますか (できればコード ビハインドではなく XAML で)。

4

2 に答える 2

0

これは、ListBoxタブの通常の動作です。リストボックスの最初のアイテムにフォーカスが移ると、上矢印キーを使用して他のアイテムに移動できます。

タブの動作を変更したい場合は、リストボックス内にあるTextBoxに対して行われたことがありますうまくいけば、RadioButtonsを更新してそのように使用できます。

于 2011-09-08T23:19:10.180 に答える
0

リストボックスからボタンを削除することになりました。リストボックスの使用は、ラジオ ボタンのバインドが失われるという古い問題から引き継がれましたが、私のテストでは、これは 4.0 で修正されたことが示されています。ラジオ ボタンがリスト ボックスに表示されなくなると、タブの動作は希望どおりになりました。

于 2011-09-23T17:18:04.520 に答える