Ejemplo n.º 1
0
 private void button_Click(object sender, RoutedEventArgs e)
 {
   //Is it neccessary to make UserData multi-instances?
   string addr = servers.Text.Trim();
   if (currentClient != null || string.IsNullOrWhiteSpace(addr) || string.IsNullOrWhiteSpace(name.Text)) return;
   System.Net.IPAddress ip;
   if (!System.Net.IPAddress.TryParse(addr, out ip))
     try
     {
       var ips = System.Net.Dns.GetHostAddresses(addr);
       foreach(var i in ips)
         if (i.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
         {
           ip = i;
           break;
         }
     }
     catch { }
   if (ip != null)
   {
     lock (this)
     {
       currentClient = new PokemonLobbyClient(ip, PORT);
       currentClient.LoginFailed += client_LoginFailed;
       currentClient.LoginCompleted += client_LoginComplete;
       currentClient.Login(name.Text.Trim(), avatarVM.InnerAvatarId, avatarUrl.Text);//"http://tb.himg.baidu.com/sys/portrait/item/f543c7aec9f1b2bbcac76c6f6c69bfd85603"
     }
     IsEnabled = false;
   }
 }