81 lines
2.8 KiB
C#
81 lines
2.8 KiB
C#
using System.Windows;
|
|
using System.Windows.Controls;
|
|
using System.Windows.Media;
|
|
using Zerolauncher.Manager;
|
|
|
|
namespace Zerolauncher.dialog
|
|
{
|
|
/// <summary>
|
|
/// EditMember.xaml 的交互逻辑
|
|
/// </summary>
|
|
public partial class EditMember : UserControl
|
|
{
|
|
|
|
private Dictionary<int, string> _services;
|
|
|
|
public EditMember()
|
|
{
|
|
_services = new Dictionary<int, string>();
|
|
int i = 0;
|
|
foreach (string serviceName in ServicesStaticInfo.ServicesName)
|
|
{
|
|
_services[i++] = serviceName;
|
|
}
|
|
InitializeComponent();
|
|
cb_pid.ItemsSource = _services;
|
|
if(EditMemberDialog.member != null)
|
|
{
|
|
int index = (int)EditMemberDialog.member;
|
|
var acc = AccountManager.accountsList[index];
|
|
cb_pid.SelectedIndex = acc.providerId;
|
|
edit_sid.Text = acc.serverId;
|
|
edit_acc.Text = acc.userName;
|
|
edit_pwd.Password = acc.userPWD;
|
|
edit_nick.Text = acc.nickName;
|
|
}
|
|
}
|
|
|
|
private void PasswordBox_PasswordChanged(object sender, RoutedEventArgs e)
|
|
{
|
|
PasswordBox passwordBox = sender as PasswordBox;
|
|
VisualBrush helpBrush = passwordBox.Resources["HelpBrush"] as VisualBrush;
|
|
if (passwordBox.Password.Length > 0)
|
|
{
|
|
passwordBox.Background = new SolidColorBrush(Color.FromRgb(255, 255, 255));
|
|
}
|
|
else
|
|
{
|
|
passwordBox.Background = helpBrush;
|
|
}
|
|
}
|
|
|
|
private void Button_Click(object sender, RoutedEventArgs e)
|
|
{
|
|
if (string.IsNullOrEmpty(cb_pid.Text) || string.IsNullOrEmpty(edit_sid.Text) || string.IsNullOrEmpty(edit_acc.Text) || string.IsNullOrEmpty(edit_pwd.Password) || string.IsNullOrEmpty(edit_nick.Text))
|
|
{
|
|
MessageBox.Show("所有选项均不能为空!", "提示");
|
|
return;
|
|
}
|
|
if (EditMemberDialog.member == null)
|
|
{
|
|
AccountManager.AddAccount(new Account { providerId = cb_pid.SelectedIndex, serverId = edit_sid.Text, userName = edit_acc.Text, userPWD = edit_pwd.Password, nickName = edit_nick.Text });
|
|
|
|
EditMemberDialog.Close();
|
|
return;
|
|
}
|
|
int index = (int)EditMemberDialog.member;
|
|
var acc = AccountManager.accountsList[index];
|
|
acc.providerId = cb_pid.SelectedIndex;
|
|
acc.serverId = edit_sid.Text;
|
|
acc.userName = edit_acc.Text;
|
|
acc.userPWD = edit_pwd.Password;
|
|
acc.nickName = edit_nick.Text;
|
|
AccountManager.saveEdit();
|
|
EditMemberDialog.Close();
|
|
return;
|
|
}
|
|
|
|
}
|
|
}
|
|
|