タイトル | : Re: リストビューの内容をコピーするには |
記事No | : 5366 |
投稿日 | : 2007/04/19(Thu) 10:17 |
投稿者 | : 魔界の仮面弁士 |
環境が書かれていないので、現行バージョンである VB2005 と仮定して回答します。
> Form1から呼び出したForm2内で表示しているリストビューの内容をForm2が閉じた際に、 > Form1のリストビューへ反映したいと思っています。
こういうイメージで良いのかな。
'==== 呼び出し側 (Form1) ==== Private WithEvents form2 As Form2 = Nothing
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If form2 Is Nothing OrElse form2.IsDisposed Then form2 = New Form2() form2.Show(Me) End If End Sub
Private Sub form2_FeedbackListViewItems(ByVal items() As ListViewItem) Handles form2.FeedbackListViewItems ListView1.Items.Clear() ListView1.Items.AddRange(items) End Sub
'==== 呼ばれる側 (Form2) ==== Public Event FeedbackListViewItems(ByVal items() As ListViewItem)
Private Sub Form2_FormClosing(ByVal sender As Object, ByVal e As FormClosingEventArgs) Handles MyBase.FormClosing With New List(Of ListViewItem) For Each item As ListViewItem In ListView1.Items .Add(DirectCast(item.Clone(), ListViewItem)) 'データを複製 Next RaiseEvent FeedbackListViewItems(.ToArray()) End With End Sub
|