Esempio n. 1
0
        private void _Click(object sender, RoutedEventArgs e)
        {
            var tag = (e.OriginalSource as Button)?.Tag as string;

            if (tag == null)
            {
                return;
            }
            if (tag == "apply")
            {
                ProfileModule.SetProfile(uiNameBox.Text, uiSignBox.Text);
            }
            else if (tag == "image")
            {
                var ofd = new System.Windows.Forms.OpenFileDialog()
                {
                    Filter = "位图文件|*.bmp;*.png;*.jpg"
                };
                if (ofd.ShowDialog() != System.Windows.Forms.DialogResult.OK)
                {
                    return;
                }
                try
                {
                    ProfileModule.SetImage(ofd.FileName);
                }
                catch (Exception ex)
                {
                    Entrance.ShowError("设置头像失败!", ex);
                    Log.Error(ex);
                }
            }
        }
Esempio n. 2
0
        private void _Click(object sender, RoutedEventArgs e)
        {
            var tag = (e.OriginalSource as Button)?.Tag as string;

            if (tag == null)
            {
                return;
            }
            if (tag == "edit")
            {
                var vis = uiEditGrid.Visibility;
                uiEditGrid.Visibility = (vis == Visibility.Visible) ? Visibility.Collapsed : Visibility.Visible;
            }
            else if (tag == "apply")
            {
                if (string.Equals(uiEditBox.Text, ProfileModule.GroupLabels) == false && ProfileModule.SetGroupLabels(uiEditBox.Text) == false)
                {
                    Entrance.ShowError($"最多允许 {Links.GroupLabelLimit} 个群组标签", null);
                }
                else
                {
                    uiEditGrid.Visibility = Visibility.Collapsed;
                }
            }
        }
Esempio n. 3
0
        private void _PushImage()
        {
            var ofd = new OpenFileDialog()
            {
                Filter = "位图文件|*.bmp;*.png;*.jpg"
            };

            if (ofd.ShowDialog() != true)
            {
                return;
            }
            try
            {
                var buf = CacheModule.ImageZoom(ofd.FileName);
                PostModule.Image(_profile.Id, buf);
                ProfileModule.SetRecent(_profile);
            }
            catch (Exception ex)
            {
                Log.Error(ex);
                Entrance.ShowError("发送图片失败", ex);
            }
        }
Esempio n. 4
0
        private async void _Click(object sender, RoutedEventArgs e)
        {
            async void _Refresh()
            {
                uiRefreshButton.IsEnabled = false;
                var lst = await Task.Run(HostModule.Refresh);

                foreach (var inf in lst)
                {
                    int idx = _hosts.IndexOf(inf);
                    if (idx < 0)
                    {
                        _hosts.Add(inf);
                    }
                    else
                    {
                        _hosts[idx] = inf;
                    }
                }
                uiRefreshButton.IsEnabled = true;
            }

            var src = (Button)e.OriginalSource;

            if (src == uiBrowserButton)
            {
                uiBrowserButton.Visibility = Visibility.Collapsed;
                uiRefreshButton.Visibility =
                    uiListGrid.Visibility  = Visibility.Visible;
                _Refresh();
                return;
            }
            else if (src == uiRefreshButton)
            {
                _hosts.Clear();
                _Refresh();
                return;
            }
            else if (src == uiConnectButton)
            {
                uiConnectButton.IsEnabled = false;
                try
                {
                    var uid = int.Parse(uiIdBox.Text);
                    var pot = int.Parse(uiPortBox.Text);
                    var hos = uiHostBox.Text;

                    var add = IPAddress.TryParse(hos, out var hst);
                    if (add == false)
                    {
                        hst = Dns.GetHostEntry(hos).AddressList.First(r => r.AddressFamily == AddressFamily.InterNetwork);
                    }
                    var iep = new IPEndPoint(hst, pot);

                    // 放弃等待该方法返回的任务
                    var _ = await LinkModule.Start(uid, iep);

                    HostModule.Name = hos;
                    HostModule.Port = pot;

                    NavigationService.Navigate(new PageFrame());
                }
                catch (Exception ex)
                {
                    Log.Error(ex);
                    Entrance.ShowError("连接失败", ex);
                }
                uiConnectButton.IsEnabled = true;
            }
        }