- 七
- 大ベテラン
- 会議室デビュー日: 2003/09/16
- 投稿数: 193
- お住まい・勤務地: 千葉県
|
投稿日時: 2007-08-16 15:09
お世話になっております
入力支援にて
ListView 内の2行目のチェックボックスにチェックを
入れたら、自動的に3行目もチェックした事にする
って仕様があるのですが
ListView の CheckBoxes をTrueにして
CheckedItems 内を操作しようと思ったら ReadOnlyのプロパティにて
動的な変更が 出来なかったのですが
実現させるための 知恵をご教授ください
よろしくお願い致します
|
- ぶさいくろう
- ぬし
- 会議室デビュー日: 2005/11/22
- 投稿数: 1232
- お住まい・勤務地: 川崎市(は俺も含めてロクな人間が住んでないよw)
|
投稿日時: 2007-08-16 15:30
ごめん、意味がわからなかったので詳しい説明をしてほしいなぁ。
特にReadOnlyあたり。省略されすぎて何がダメなのかわからない。
|
- 七
- 大ベテラン
- 会議室デビュー日: 2003/09/16
- 投稿数: 193
- お住まい・勤務地: 千葉県
|
投稿日時: 2007-08-16 15:49
引用: |
|
ぶさいくろうさんの書き込み (2007-08-16 15:30) より:
ごめん、意味がわからなかったので詳しい説明をしてほしいなぁ。
特にReadOnlyあたり。省略されすぎて何がダメなのかわからない。
|
すみません
コード: |
|
Dim ni As Integer
Dim i As Integer
With Me.ListView1.CheckedItems
If .Count <> 0 Then
ni = .Count
For i = 0 To .Count - 1
If .Item(i).Index = 2 Then ''' 2行目にチェックがあったら
.Item(ni).Index = 3 ''' 3行目もチェックしたことにする ←readonly のため不可能
End If
Next i
End If
End With
|
こんなことをやってみたのですが
CheckedItems.item(ni).Index は ReadOnlyなので変更不可 というシンタックスエラー
になります
|
- べる
- ぬし
- 会議室デビュー日: 2003/09/20
- 投稿数: 1093
|
投稿日時: 2007-08-16 16:53
CheckedItemsがどんなものか理解してますか?Withを使わずに書いてみてください。おかしいことに気づくはずです。で、CheckedItems使う必要がない気がします。単純に
「ListView1.Items(2).Checked」だったら「ListView1.Items(3).Checked」にする
じゃだめですか?
|
- 七
- 大ベテラン
- 会議室デビュー日: 2003/09/16
- 投稿数: 193
- お住まい・勤務地: 千葉県
|
投稿日時: 2007-08-16 17:26
引用: |
|
べるさんの書き込み (2007-08-16 16:53) より:
CheckedItemsがどんなものか理解してますか?Withを使わずに書いてみてください。おかしいことに気づくはずです。で、CheckedItems使う必要がない気がします。単純に
「ListView1.Items(2).Checked」だったら「ListView1.Items(3).Checked」にする
じゃだめですか?
|
チェックされた行の一覧に拘ってました
ListView1.Items(2).Checked で チェックボックスの状態が判断できたのですね
コード: |
|
If flg = True Then
flg = False
Exit Sub
End If
If e.Index = 1 And e.NewValue = CheckState.Checked Then ''' 1行目にチェックがあったら
flg = True
ListView1.Items(0).Checked = True ''' 0行目もチェックしたことにする
End If
|
で実現できました
ありがとうございました m(__)m
|