ObjectListViewコンポーネントでFullRowSelectプロパティとMultiSelectプロパティをtrueに設定しましたが、Ctrlキーを押しながら複数の行を選択する必要があります。ですから、CtrlキーやShiftキーを押さなくてもマルチ選択を行う方法はありますか?Ctrlキーを押さずにObjectListViewで複数選択を行う方法はありますか?
答えて
私は解決策があると思います。この例のモデルオブジェクトは、タイプ「アイテム」である。いくつかの説明については、コードコメントを参照してください。
// We require a list to remember which items should stay selected
private List<Item> _MultiSelectList;
public Form1() {
// <other stuff>
_MultiSelectList = new List<Item>();
}
// use this event to check which item has been clicked
private void objectListView1_MouseClick(object sender, MouseEventArgs e) {
objectListView1.BeginUpdate();
// any item clicked?
if (objectListView1.MouseMoveHitTest.Item != null) {
var item = objectListView1.MouseMoveHitTest.Item.RowObject as Item;
// model object of expected type available?
if (item != null) {
// add or remove item from list to effectively toggle selection
if (_MultiSelectList.Contains(item)) {
_MultiSelectList.Remove(item);
} else {
_MultiSelectList.Add(item);
}
}
}
// select all desired items
objectListView1.SelectObjects(_MultiSelectList);
objectListView1.EndUpdate();
}
// optional: to prevent flickering from the native item selection change, we freeze the OLV contents during the mouse click
private void objectListView1_MouseDown(object sender, MouseEventArgs e) {
objectListView1.Freeze();
}
private void objectListView1_MouseUp(object sender, MouseEventArgs e) {
objectListView1.Unfreeze();
}
それは素晴らしい作品です!どうもありがとうございました! –
完了。しかし、私はここでは初心者であり、評判は15歳未満であるため、今は投票できませんでした。ちなみに、選択された行の最後の行を選択解除する簡単な方法はありますか? "_MultiSelectList"の行を他の行に対して選択解除するのは簡単ですが、行をクリックして最後の行を選択解除すると再び強調表示されます。 –
ObjectListViewの属性であるかどうかわからない –
- 1. HTMLスクロールなしでCtrlキーを押さずに複数選択
- 2. 複数のリストボックスを選択せずにCTRLを押す
- 3. javascriptを使用してCtrlキーを押さずにリストボックスasp.netから複数の項目を選択するにはどうすればいいですか?
- 4. 右クリックまたはCtrlキーを押さずにinspect要素を開く方法
- 5. VimでCtrlキーとCtrlキーをマップする方法はありますか?
- 6. Ctrlを押しながらTreeViewerを複数選択する方法
- 7. Ctrlキーを押さずにdatagridviewの複数のセルを選択するにはどうすればいいですか?
- 8. 複数選択ctrl +ボタン実行時に
- 9. vtkInteractorStyleRubberBandPick:キーを押さずに選択モードを設定する
- 10. Ctrlキーを押しながらWPF DataGridで複数の行を選択するにはどうすればよいですか?
- 11. 複数のselectをpで実行する方法はありますか?ctrlキーを使用せずにselectManyMenuを呼び出す
- 12. Ctrl + Aキーを押しますか?
- 13. TextBoxのCtrl + 1キーの押下方法
- 14. Enterキーを押さずにユーザー入力を取得する方法はありますか?
- 15. このjqueryグリッド選択オブジェクトをデフォルトの複数選択にする方法はありますか?
- 16. Python 2.7 - SHIFT-KEYまたはCTRL +キーが押されているかどうかを確認する方法は?
- 17. SWT ListViewerでCtrlキーを押して放す方法
- 18. テーブルの複数の行を選択するには、Ctrlキーを押しながら各行を選択します。これを角2に適用するにはどうすればいいですか?
- 19. QGIS - 式で選択 - 複数選択/問合せを行う方法
- 20. Ctrlキーで複数ページハイパーリンクをクリックする方法
- 21. JavaScriptでCtrl-Pキーを押す方法を教えてください。
- 22. MySQLで複数列の主キーで複数の行を選択する方法は?
- 23. チェックボックスを使用せずに複数の行をHTMLで選択
- 24. 選択タグでoptgroupのラベルを選択する方法はありますか?
- 25. Pythonで特定のキーが押されたかどうかを確認する方法はありますか?
- 26. 端末でキーが押されたかどうかを検出する方法はありますか?
- 27. jsfまたはprimefaces dataTableで複数の選択を行う方法?
- 28. Ctrl + Enterを押したときにDatagridviewの複数行のテキストボックス
- 29. ボタンを押して行を選択する方法は?
- 30. Shiftキーを押しながらDataGridで複数の範囲を選択(Flex 3)
興味深い質問です。私はこれがネイティブにサポートされていないことは確かです。私はそれを実装するのは簡単ではないと思います。 OLVコードを混乱させたくない場合は、おそらく、選択が変更されたイベントを処理し、以前選択したアイテムを追跡し、選択が終了した後にプログラムで再選択する方法があります。 –