2014-04-04 6 views
0

검색 기능에서 검색된 항목 : ALBUMS가 목록 상자에 추가되지 않습니까? 다른 필드 내가 앨범이 LinkedList의 또는 목록에 항목을 넣어 연결리스트검색된 항목이 목록에 추가되지 않았습니다.

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 

namespace Assignment 
{ 
public partial class frmAddArtist : Form 
{ 
    AVLTree<Artist> avltree = new AVLTree<Artist>(); 
    LinkedList<Album> temp = new LinkedList<Album>(); 
    Artist artistinst; 
    Album albuminst; 
    string noofmembers, artistname; 
    int artistcount; 

    public frmAddArtist() 
    { 
     InitializeComponent(); 
    } 
    private void label5_Click(object sender, EventArgs e) 
    { 

    } 

    private void btnAddArtist_Click(object sender, EventArgs e) 
    { 
     string tempalbum, date; 
     tempalbum = txtAlbumName.Text; 
     date = dtpReleaseDate.Text.ToString(); 
     albuminst = new Album(tempalbum, date); 
     temp.AddFirst(albuminst); 
     lbAlbums.Items.Add(tempalbum); 
    } 

    private void btnSave_Click(object sender, EventArgs e) 
    { 

     artistname = txtArtistName.Text; 
     noofmembers = txtNoOfMembers.Text; 
     artistinst = new Artist(artistname, noofmembers, temp); 
     avltree.InsertItem(artistinst); 
     artistcount++; 
     txtArtistName.Clear(); 
     txtNoOfMembers.Clear(); 
     txtAlbumName.Clear(); 
     lbAlbums.Items.Clear(); 
     temp.Clear(); 
    } 

    private void btnNoOfArtist_Click(object sender, EventArgs e) 
    { 
     MessageBox.Show("The No. Artist: " + Convert.ToString(artistcount)); 
    } 

    private void btnHeight_Click(object sender, EventArgs e) 
    { 
     int heightoftree = avltree.Height(); 
     string height = Convert.ToString(heightoftree); 
     MessageBox.Show("The Height of the Tree: " + height); 
    } 

    private void btnSearch_Click(object sender, EventArgs e) 
    { 
     Artist temp = new Artist(txtSearch.Text, " ", null); 
     Artist result = avltree.Search(temp); 
     if (result != null) 
     { 
      if (result.CompareTo(temp) == 0) 
      { 
       txtArtistName.Text = result.artistname; 
       txtNoOfMembers.Text = result.noofmembers; 
       foreach (Album p in result.Albumslist) 
       { 
        lbAlbums.Items.Add(p.Albumname); 
       } 
      } 
       else if(result.CompareTo(temp) <0) 
       { 
        MessageBox .Show("No Match Found"); 
       } 

      } 
     } 
    } 
} 

답변

0

를 사용하여 조회 할 검색된 앨범과 목록 상자를 채울 수있는 방법이 제발 말해 수

을 채 웁니다. 그런 다음 lbAlbums.ItemsSource =;

+0

앨범이 이미 링크 된 목록에 있음 공개 됨 LinkedList Albumslist { get {return albumslist; } 세트 {앨범 목록 = 값; } } – user3498680

+0

ListBox의 ItemsSource를 List로 설정하면 모든 것이 잘됩니다;) 앨범의 ToString Merhod를 재정의해야합니다. 그렇지 않으면 namespace.Album 만 보입니다. – mrSurprise

관련 문제