private void textUrl_TextChanged(object sender, EventArgs e) { var url = textUrl.Text; string title = ""; Byte[] pageData, originString = null; WebClient MyWebClient = new WebClient(); MyWebClient.Credentials = CredentialCache.DefaultCredentials; try { pageData = MyWebClient.DownloadData(url); string pageHtml = Encoding.Default.GetString(pageData); if (pageHtml == "") { return; } originString = Convert.FromBase64String(pageHtml); } catch { return; } string ssUrl = System.Text.Encoding.UTF8.GetString(originString); var match = UrlFinderR.Match(ssUrl); if (match.Success) { var ssrLink = controller.Base64UrlDecode(match.Groups["base64"].Value); var GroupMatch = GroupFinder.Match(ssrLink); if (GroupMatch.Success) { title = controller.Base64UrlDecode(GroupMatch.Groups["base64"].Value); textGroup.Text = title; var index = SubscribeListBox.SelectedIndex; if (index != -1) { SubscribeListBox.Items.RemoveAt(index); SubscribeListBox.Items.Insert(index, title + " - " + url); SubscribeList[index].title = title; SubscribeList[index].url = url; SubscribeListBox.SelectedIndex = index; } } } }