Esempio n. 1
0
        void UpdateLog(WndMain main, LogMessage msg)
        {
            DataServerDataContext context = main.DataContext as DataServerDataContext;

            if (context != null)
            {
                Run log = new Run(msg.Time.ToShortTimeString() + " " + msg.Sender + " : " + msg.Message);
                switch (msg.Type)
                {
                case LogMessageType.INFO:
                    log.Foreground = Brushes.Black;
                    break;

                case LogMessageType.WARN:
                    log.Foreground = Brushes.Blue;
                    break;

                case LogMessageType.ERROR:
                    log.Foreground = Brushes.Red;
                    break;
                }

                context.Logs.Insert(0, log);
                if (context.Logs.Count > 1000)
                {
                    context.Logs.RemoveAt(context.Logs.Count - 1);
                }
            }
        }
Esempio n. 2
0
        public WndMain()
        {
            InitializeComponent();

            _context         = new DataServerDataContext();
            this.DataContext = _context;

            _logger = UnityContainerHost.Container.Resolve <IWindowLogger>() as WindowLogger;
            if (_logger != null)
            {
                _logger.NewLogEvent += NewLogEvent;
                _logger.Info("数据服务器", "程序启动");
            }

            _dataSourceWorker                     = new BackgroundWorker();
            _dataSourceWorker.DoWork             += _dataSourceWorker_DoWork;
            _dataSourceWorker.RunWorkerCompleted += _dataSourceWorker_RunWorkerCompleted;

            _serverWorker                     = new BackgroundWorker();
            _serverWorker.DoWork             += _serverWorker_DoWork;
            _serverWorker.RunWorkerCompleted += _serverWorker_RunWorkerCompleted;

            _isStartDataSource = false;
            _isStartServer     = false;
        }