C#のListViewで選択を制御していますが、以下のように読み取り専用とのエラーが出て困りました。
プロパティまたはインデクサー ’System.Windows.Forms.ListViewItem.Index’ は読み取り専用なので、割り当てることはできません。
C#のListViewでエラー
ListViewの選択をプログラムで制御しようとしているのですが、うまくいきません。
Form.listView1.SelectedItems[0].Index = 1;
と代入すると、以下のエラーが表示されました。
ListView.SelectedListViewItemCollection ListView.SelectedItems
コントロール内の選択された項目を取得します。
エラー:
プロパティまたはインデクサー’System.Windows.Forms.ListViewItem.Index’は読み取り専用なので、割り当てることはできません。
英語版なら以下のエラーです。
Property or indexer 'System.Windows.Forms.ListViewItem.Index' cannot be assigned to -- it is read only
ListViewItem.Index 読み取り専用の解決策
以下のようにしてみたら解決しました。
Form.listview1.Items[0].Selected = true;
Form.listview1.Select();
まぁ、なんとなく理解できる仕様です。
親である、Form.listView1.Select() を忘れないで設定することも必要でした。
プログラミングの無料レッスン体験
約8,000名の受講生と80社以上の導入実績のあるプログラミングやWebデザインのオンラインマンツーマンレッスンCodecamp
<Codecampの特徴>
1 現役エンジニアによる指導
2オンラインでのマンツーマン形式の講義
3大手企業にも導入されている実践的なカリキュラム
↓無料体験レッスン実施中です。
コメント