Windows 窗体用户控件 +面板:WPF 等效面板
在 Windows 窗体中,我创建了一个 Twitter 应用程序,它使用 TweetSharp 从时间轴获取最新的推文。我使用了 UserControl
和 Panel
来显示这些。我用来执行此操作的代码如下所示:
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 中的等效项。我该怎么做?
In Windows Forms, I have created a Twitter application that gets the latest tweets from the Timeline using TweetSharp. I have used a UserControl
and a Panel
to display these. The code I've used to do this looks like this:
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
}
I'm now re-making this application in WPF. The UserControl is in the same format, but I'm clueless as of how to add this to the panel and dock it to the top - or the equivalent in WPF. How do I do this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
WinForms UserControl 与 WPF UserControl 不同。
您必须在 WPF 中再次创建 UserControl。
当然,您可以将 WinForms UserControl 包装在
WindowsFormsHost
元素中,但这不是一个好的做法。A WinForms UserControl are not the same as a WPF UserControl.
You'll have to make the UserControl again, in WPF.
Of course, you could wrap the WinForms UserControl in a
WindowsFormsHost
element, but that's not good practice.