あるイベントをトリガする多数の場合はListViewItems、ListView。Windows Forms)
質問
思の有効/無効設定その他の制御に基づかなければならない多くの項目は私の ListView
ます。いずれにしよう、どちらかに ListView
自身、または ListViewItemCollection
.ありがとうござい方を総称しに見るコレクションのクライアントまで、フルのC#のための変化するかを
嬉しいでその他のイベントでもいいのでもあり、火の項目がな変化が、例えば、 ControlAdded
や Layout
イベントに動作しなかった:(.
解決
@Domenic
なくても、なかなか得ることにした。
別の解決が延長するListView、追加、削除、の代わりに呼びかける。ます。追加項目です。削除は、お呼びします。ることが可能であるの追加および削除なイベントとなって、少しのコードレビューをまれます。ます。追加。ます。削除しないという直接でき事ではないでしょうか。ここで少します。また1追加機能があり、6ついての実施また利用可能なあらゆる機能を追加す.があります。AddRangeです。明らかにするためです。
Public Class MonitoredListView
Inherits ListView
Public Event ItemAdded()
Public Event ItemRemoved()
Public Sub New()
MyBase.New()
End Sub
Public Function AddItem(ByVal Text As String) As ListViewItem
RaiseEvent ItemAdded()
MyBase.Items.Add(Text)
End Function
Public Sub RemoveItem(ByVal Item As ListViewItem)
RaiseEvent ItemRemoved()
MyBase.Items.Remove(Item)
End Sub
End Class
他のヒント
においては、当社が定めるインターネットができる。あとだれかのサブクラスListViewItemCollectionを向上させる独自のイベントが何かを追加し、コードと同様です。
Public Class MyListViewItemCollection
Inherits ListView.ListViewItemCollection
Public Event ItemAdded(ByVal Item As ListViewItem)
Sub New(ByVal owner As ListView)
MyBase.New(owner)
End Sub
Public Overrides Function Add(ByVal value As System.Windows.Forms.ListViewItem) As System.Windows.Forms.ListViewItem
Dim Item As ListViewItem
Item = MyBase.Add(value)
RaiseEvent ItemAdded(Item)
Return Item
End Function
End Class
私にもできるいはサブクラスListViewを提供するイベントした位置に移動します。
所属していません StackOverflow