private async void StartNetwork(APIlsFileInfo info = null) { var client = new PutHttpClient(); if (info == null || info.ext.Equals("folder")) { var targetDir = info != null ? info.path : ""; // LANの場合はマニフェストのプライベートネットワークが必要 var param = new Dictionary<string, string> { { "target_dir", targetDir } }; _ViewModel.APIlsResponse = await client.Execute<APIls>(_ViewModel.Url + "/APIls.php", _ViewModel.UserName, _ViewModel.Password, param); } else { var param = new Dictionary<string, string> { { "target_file", info.path } }; _ViewModel.APIviewResponce = await client.Execute<APIview>(_ViewModel.Url + "/APIview.php", _ViewModel.UserName, _ViewModel.Password, param); } if (client.IsError) { dialog.Title = "エラー発生"; listViewMesasge.ItemsSource = client.ErrorMessages; await dialog.ShowAsync(); return; } textBox.Text = client.Json; }
private async void listVireFile_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (e.AddedItems.Count < 1) { return; } var listView = sender as ListView; var fileName = listView.SelectedItem as string; var str = _ViewModel.Url + "/" + _ViewModel.APIviewResponce.extract_dir + "/" + fileName; var client = new PutHttpClient(); var ba = await client.ExecuteBinary(str, _ViewModel.UserName, _ViewModel.Password); var bitmap = new BitmapImage(); using(var ms = new MemoryStream(ba)) { await bitmap.SetSourceAsync(ms.AsRandomAccessStream()); image.Source = bitmap; } }