2016-09-04 3 views
0

목록 상자에 추가 한 값을 표시하는 데 도움이 필요합니다. 목록 상자에 추가하는 몇 가지 방법을 연구했습니다. 이것은 나의 최신 시도이지만, "Netflix"와 "Hulu"를 표시하는 방법을 알 수는 없습니다. 디버깅 후 값은 목록 상자 안에 있습니다. 텍스트를 볼 수 없습니다.listbox에서 값을 표시하는 방법 C#

사이드 뷰에서는 BASIC 옵서버 패턴을 보여주기 위해 작업 중입니다. 코드의 변경 사항을 표시하려면 다른 공급자에게 가입 한 결과를 표시하고 싶습니다. 미리 감사드립니다.

public partial class MainWindow : Window 
{ 
    List<string> myList = new List<string>(); 

    public MainWindow() 
    { 
     InitializeComponent(); 
    } 

    private void subscribeToNetflixButton_Click(object sender, RoutedEventArgs e) 
    { 
     Netflix netflix = new Netflix("Stir Crazy"); 
     Observer subscriberOne = new Observer(); 
     netflix.AddObserver(subscriberOne); 
     myList.Add("Netflix"); 
     listBox.Items.Add(myList.ToArray()); 
    } 

    private void subscribeToHuluButton_Click(object sender, RoutedEventArgs e) 
    { 
     Hulu hulu = new Hulu("Willy Wonka and the Chocolate Factory"); 
     Observer subscriberTwo = new Observer(); 
     hulu.AddObserver(subscriberTwo); 
     myList.Add("Hulu"); 
     listBox.Items.Add(myList.ToArray()); 
    } 
} 

답변

0

당신은하지 Add 컬렉션에 AddRange을 사용해야합니다

public partial class MainWindow : Window 
{ 
    List<string> myList = new List<string>(); 

    public MainWindow() 
    { 
     InitializeComponent(); 
    } 

    private void subscribeToNetflixButton_Click(object sender, RoutedEventArgs e) 
    { 
     Netflix netflix = new Netflix("Stir Crazy"); 
     Observer subscriberOne = new Observer(); 
     netflix.AddObserver(subscriberOne); 
     myList.Add("Netflix"); 
     listBox.Items.AddRange(myList.ToArray());//This line should be changed 
    } 

    private void subscribeToHuluButton_Click(object sender, RoutedEventArgs e) 
    { 
     Hulu hulu = new Hulu("Willy Wonka and the Chocolate Factory"); 
     Observer subscriberTwo = new Observer(); 
     hulu.AddObserver(subscriberTwo); 
     myList.Add("Hulu"); 
     listBox.Items.AddRange(myList.ToArray());//And this line 
    } 
} 

을 BTW : 당신은 WPF를 사용하는 경우, 루프를 통해 자신의 AddRange을 (그것이 기본적으로 사용할 수 없습니다) 추가해야하지만 예를 들어 확장 메서드 내부의 컬렉션을 통해, 또는 여러 번 기능이 필요하지 않은 경우 바깥 쪽을 선택합니다.

+0

예, 그게 내가 생각한 것입니다,하지만 'ItemCollection'에 'AddRange'등등에 대한 정의가 포함되어 있지 않습니다 ..... 사용하는 것이 누락되어 있는지 묻는 중입니다. 그것은 "using System.Collections.Generic;"을 사용합니다. 어떤 목록에 대해 동일합니다 .. 나는 2015 년 기업을 사용하고 있는데, 그게 문제인가? – Clint

+0

그러면 WPF를 사용하고있는 것 같아요. 편집 된 답변을 참고하십시오. – mok

+0

예, WPF를 사용하고 있습니다. 대신 TextBox를 사용 했으므로 AddRange의 다른 메서드를 작성하는 것이 더 쉬워졌습니다. 감사. – Clint

관련 문제