2017-01-12 1 views
0

私に似た質問が以前に掲載されていることは知っていますが、私はいろいろな提案を試みましたが、何も動作していないようです。VB.NetコードでWPFアプリケーションのリストボックスコントロールからレコードを削除する方法

は、ここに私の問題です:私は私のリストボックスコントロールから項目\を削除しようとすると、次のエラーを取得:
追加情報:のItemsSourceの使用中に操作が有効ではありません。代わりにItemsControl.ItemsSourceを使用して要素にアクセスして変更してください。

VB.Netコードビハインドを使用してWPFのリストボックスから項目を削除する手助けが必要です。 リストボックスの行をクリックすると、そのアイテムをリストボックスから削除したいと考えています。 私のリストボックスに読み込むオブジェクト 'ToLoadImages'のアライストを作成します。

選択したアイテムをリストボックスから削除したいのですが、リストオブジェクト「ToLoadImages」から削除しますか?

以下の私のコードを参照してください:私は意志のコードを追加する場所

リストボックス から選択した項目を取得するために、コード 'CODEはリストボックス

Private Sub GetListToLoad(ClaimNo As String) 
Dim ta As New ImagesDataSetTableAdapters.usp_SELECT_ImageTableAdapter 
Dim dt As ImagesDataSet.usp_SELECT_ImageDataTable = ta.GetData(1, _ClaimNo, True) 

Dim dr As DataRow 

ListToLoad = New List(Of ToLoadImages) 
Dim i As Integer = 0 
For Each dr In dt 
     Dim ImgSource2() As Byte = DirectCast(dr(7), Byte()) 
     Dim stream2 As MemoryStream = New MemoryStream 
     stream2.Write(ImgSource2, 0, ImgSource2.Length - 1) 
     stream2.Seek(0, SeekOrigin.Begin) 
     bitMap2 = New BitmapImage 
     bitMap2.BeginInit() 
     bitMap2.StreamSource = stream2 
     bitMap2.EndInit() 
     ListToLoad.Add(New ToLoadImages(dr(0), bitMap2)) 
    Next 

    ImageListBox.ItemsSource = ListToLoad 
    End Sub 

をロードするために'「ここにあります選択したアイテムをリストボックスから削除し、 'ToLoadImages'のリストから削除します。

Private Sub ImageListBox_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles ImageListBox.SelectionChanged 
    Try 
     Dim itemsToLoad As ToLoadImages 
     itemsToLoad = ImageListBox.SelectedItem 

     Dim imageID as String = itemsToLoad.ImgID.ToString 


     Catch ex As Exception 
     MsgBox("Error encountered.") 
     End Try 
    End Sub 

クラスToLoadImages

Public Class ToLoadImages 
    Private m_imgID As Integer 
    Private m_imageX As BitmapImage 

    Public Sub New(imgID As Integer, imagex As BitmapImage) 
    Me.m_imgID = imgID 
    Me.m_imageX = imagex 
    End Sub 

    Public Property ImgID() As Integer 
    Get 
     Return m_imgID 
    End Get 

    Set(ByVal value As Integer) 
      m_imgID = value 
     End Set 
    End Property 

    Public Property ImageX() As BitmapImage 
    Get 
     Return m_imageX 
    End Get 

    Set(ByVal value As BitmapImage) 
     m_imageX = value 
    End Set 
End Property 
End Class 

答えて

0

利用ObservableCollectionの代わりList

ObservableCollection 

自動的に変更を更新します
関連する問題