private async void URLBox_TextChanged(object sender, TextChangedEventArgs e) { string url = URLBox.Text; analyser?.Dispose(); analyser = UrlConverter.GetAnalyser(url); if (analyser == null) { return; } controller.RegistAnalyser(null, analyser); analyser.BindVisualController(controller); await analyser.SetURLAsync(url); }
//得到了一个新URL,分析其文件名,文件大小 private async void AddURL(string URL) { AbstractAnalyser analyser = Converters.UrlConverter.GetAnalyser(URL); await analyser.SetURLAsync(URL); if (analyser.IsLegal()) { URLMessage message = new URLMessage(); message.URL = analyser.URL; message.StreamSize = analyser.GetStreamSize(); message.RecommendedFileName = analyser.GetRecommendedName(); if (message.RecommendedFileName == null) { message.RecommendedFileName = string.Empty; } message.StreamSizeToString = Converters.StringConverter.GetPrintSize(analyser.GetStreamSize()); AddListViewItem(message); LimitListLength(); } analyser.Dispose(); }