private void OnSureClick(object sender, RoutedEventArgs e)
        {
            string LocalIPText = LocalIP.Text.Trim();
            string PortText    = Port.Text.Trim();
            string PathText    = Path.Text.Trim();

            if (string.IsNullOrEmpty(LocalIPText) || string.IsNullOrEmpty(PortText) || string.IsNullOrEmpty(PathText) || IPUtils.PortInUse(int.Parse(PortText)))
            {
                this.ShowMessageAsync("填写错误提示", "本地IP、端口、路径均不能为空;端口不能被占用");
                return;
            }

            if (string.IsNullOrEmpty(Id.Text))
            {
                ServerInfoXmlUtils.Add(new ServerInfo(Guid.NewGuid().ToString(), LocalIPText, PortText, PathText, false));
            }
            else
            {
                ServerInfoXmlUtils.Edit(new ServerInfo(Id.Text.ToString(), LocalIPText, PortText, PathText, false));
            }

            RefreshEvent();

            Close();
        }
示例#2
0
        private void OnLookClick(object sender, RoutedEventArgs e)
        {
            System.Windows.Controls.Button Btn = sender as System.Windows.Controls.Button;
            object obj = Btn.Tag;

            ServerInfo ServerInfo = ServerInfoXmlUtils.GetValById(obj.ToString());

            AddServerInfo AddServerInfo = new AddServerInfo(ServerInfo, true);

            AddServerInfo.ShowDialog();
        }
示例#3
0
        private void RefreshTable()
        {
            ObservableCollection <ServerInfo> Infos = new ObservableCollection <ServerInfo>();

            List <ServerInfo> Result = ServerInfoXmlUtils.All();

            for (int i = 0; i < Result.Count; i++)
            {
                Infos.Add(Result[i]);
            }
            ServerInfos.ItemsSource = Infos;
        }
示例#4
0
        private void OnStopClick(object sender, RoutedEventArgs e)
        {
            System.Windows.Controls.Button Btn = sender as System.Windows.Controls.Button;
            object obj = Btn.Tag;

            ServerManager.GetInstance().Get(obj.ToString()).Stop();
            ServerManager.GetInstance().Remove(obj.ToString());

            // 变更状态
            ServerInfoXmlUtils.Stop(obj.ToString());

            RefreshTable();
        }
示例#5
0
        private async void DialogsBeforeRemove(string Id)
        {
            MessageDialogResult clickresult = await this.ShowMessageAsync("数据删除", "删除之后数据无法恢复,您确定要删除吗?", MessageDialogStyle.AffirmativeAndNegative);

            if (clickresult == MessageDialogResult.Negative)//取消
            {
                return;
            }
            else//确认
            {
                ServerInfoXmlUtils.Remove(Id);
                RefreshTable();
            }
        }
示例#6
0
        private void Init()
        {
            List <ServerInfo> Result = ServerInfoXmlUtils.All();

            for (int i = 0; i < Result.Count; i++)
            {
                ServerInfo ServerInfo = Result[i];
                if (Result[i].Started)
                {
                    // 启动
                    Server Server = new Server();
                    Server.Start(IPAddress.Parse(ServerInfo.LocalIP), int.Parse(ServerInfo.Port), 100, ServerInfo.Path);

                    ServerManager.GetInstance().Add(ServerInfo.Id, Server);
                }
            }
        }
示例#7
0
        private void OnRestartClick(object sender, RoutedEventArgs e)
        {
            System.Windows.Controls.Button Btn = sender as System.Windows.Controls.Button;
            object obj = Btn.Tag;

            Server Server = ServerManager.GetInstance().Get(obj.ToString());

            if (null == Server)
            {
                return;
            }

            ServerInfo ServerInfo = ServerInfoXmlUtils.GetValById(obj.ToString());

            Server.Stop();
            Server.Start(IPAddress.Parse(ServerInfo.LocalIP), int.Parse(ServerInfo.Port), 100, ServerInfo.Path);
        }
示例#8
0
        private void OnStartClick(object sender, RoutedEventArgs e)
        {
            System.Windows.Controls.Button Btn = sender as System.Windows.Controls.Button;
            object obj = Btn.Tag;

            ServerInfo ServerInfo = ServerInfoXmlUtils.GetValById(obj.ToString());

            // 启动
            Server Server = new Server();

            Server.Start(IPAddress.Parse(ServerInfo.LocalIP), int.Parse(ServerInfo.Port), 100, ServerInfo.Path);

            ServerManager.GetInstance().Add(obj.ToString(), Server);

            // 变更状态
            ServerInfoXmlUtils.Start(obj.ToString());

            // 刷新表格
            RefreshTable();
        }