C#组件在调用类后不会显示

时间:2015-02-19 21:49:55

标签: c#

老实说,我不知道我的组件是如何赢得的。

基本上这是我的结构:

现在我正在构建一个'线程'这是其中一个名字'这将是一个消息预览.....' 我要问的是:有人能引导我朝着正确的方向前进。我是一名java开发人员,习惯了c#

MessageThread m = new MessageThread("Example Name", "Hey man, How are you?", "12:34", "000000000325");
m.buildThread();

这是这个课程:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;

namespace FacebookMessenger
{
    class MessageThread
    {
        private String title;
        private String preview;
        private String time;
        private String userId;
        public Label lblTitle = new Label();

        public MessageThread(String title, String preview, String time, String userId)
        {
            this.title = title;
            this.preview = preview;
            this.time = time;
            this.userId = userId;
        }

        public void buildThread()
        {
            lblTitle.Content = "Name Here";
            lblTitle.FontFamily = new FontFamily("Segoe UI Light");
            lblTitle.FontSize = 28;
            lblTitle.Width = 400;
            lblTitle.Height = 50;
            lblTitle.Foreground = Brushes.Wheat;
        }
    }
}
如果有人帮助我,那将会非常有帮助。

1 个答案:

答案 0 :(得分:0)

如果您使用的是Win Form,则需要更新UI线程上的标签,即

        private void UpdateTitle(string newTitle)
        {         
            if (this.lblTitle.InvokeRequired)
            {
                this.lblTitle.BeginInvoke((MethodInvoker) delegate() { this.lblTitle.Text = newTitle; });    
            }
            else
            {
                this.lblTitle.Text = newTitle;
            }
        }

如果您正在使用WPF,则应将标签绑定到视图模型,并在需要刷新UI时使用INotifyPropertyChanged