2012-02-13 4 views
2

Windows Forms에서 TweetSharp를 사용하여 타임 라인에서 최신 트윗을 가져 오는 트위터 응용 프로그램을 만들었습니다. 나는 이것을 표시하기 위해 UserControlPanel을 사용했다. 이 작업을 수행하는 데 사용한 코드는 다음과 같습니다.Windows Forms UserControl + Panel : WPF 등가

IEnumerable<TwitterStatus> tweets = service.ListTweetsOnHomeTimeline(); 

foreach (var tweet in tweets) 
{ 
    TweetBox t = new TweetBox(); 

    t.username.Text = tweet.User.ScreenName; // Label 
    t.display.ImageLocation = tweet.User.ProfileImageUrl; // PictureBox 
    t.tweet.Text = tweet.Text; // Label 
    t.info.Text = tweet.CreatedDate.ToString(); 
    t.Dock = DockStyle.Top; 
    HomeTimeline.Controls.Add(t); // Add to HomeTimeline Panel 
} 

이제 WPF에서이 응용 프로그램을 다시 작성하고 있습니다. UserControl은 같은 형식이지만 패널에 추가하고 WPF의 최상위 또는 그와 동등한 방법으로 도킹하는 방법에 관해서는 단서가 없습니다. 어떻게해야합니까?

+0

ItemsControl을 살펴보십시오. –

+1

foreach 루프 인 Yuck은 [데이터 바인딩] (http://msdn.microsoft.com/en-us/library/ms752347.aspx)과 [데이터 템플릿] (http://msdn.microsoft .com/ko-us/library/ms742521.aspx). –

답변

0

WinForms UserControl은 WPF UserControl과 다릅니다.

WPF에서 UserControl을 다시 만들어야합니다.

물론, WindowsFormsHost 요소에 WinForms UserControl을 래핑 할 수 있지만 이는 좋지 않습니다.

+0

내가 가지고있는 사용자 정의 컨트롤은 wpf 사용자 컨트롤입니다. –

+1

반드시 간과 했어야합니다. 어쨌든 WPF의 GUI는 XAML에서 수행됩니다. (코드 숨김으로 처리 할 수도 있지만 좋은 방법이 아닙니다.) – AkselK