私は現在、より複雑なものの概念実証として、単純なWindows8アプリに取り組んでいます。
現在、1つのテキストボックスと2つのボタンがあります。1つのボタンでフォルダを選択できます(テキストボックスにフォルダパスが表示されます)。
もう1つのボタンは、現在選択されているフォルダー内の最初の5つの画像の絶対パスを返すはずですがFileOpenPicker
、Win8アプリでの使用に問題があります。
私がやりたいのは、このボタンをクリックすると、画像の最初の5つのパスを返すのではなく、右に伸ばすのではなく、下に伸ばすように、このようにグリッド形式で表示したいということです。従来のウェブサイト。
私がこれまでに持っているもの:
XAML:
<StackPanel Grid.Row="2" Margin="120,0,0,0">
<StackPanel Orientation="Horizontal" Margin="0,20,0,20">
<TextBox x:Name="pictureInput" HorizontalAlignment="Left" Grid.Row="2" TextWrapping="Wrap" Text="Select Image..." VerticalAlignment="Top" Width="300" Height="41" FontSize="24"/>
<Button Content="Browse" HorizontalAlignment="Left" Grid.Row="1" VerticalAlignment="Top" Height="41" Width="147" Click="Browse_Folder_Click"/>
<TextBlock x:Name="ImgThumbHere" Grid.Column="2" Width="540"/>
<Button Content="Find Images" HorizontalAlignment="Left" VerticalAlignment="Top" Height="90" Width="250" Click="Find_Images"/>
</StackPanel>
</StackPanel>
Xaml.CS:
//method to select folder :
private async void Browse_Folder_Click(object sender, RoutedEventArgs e)
{
string folderPath = "";
FolderPicker folderPicker = new Windows.Storage.Pickers.FolderPicker();
// Create the picker object and set options
folderPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary;
// Users expect to have a filtered view of their folders depending on the scenario.
// For example, when choosing a documents folder, restrict the filetypes to documents for your application.
folderPicker.FileTypeFilter.Add("*");
StorageFolder folder = await folderPicker.PickSingleFolderAsync();
if (folder != null)
{
if (folder.Path != "" && folder.Path != null)
{
folderPath = folder.Path;
}
else
{
folderPath = folder.Name;
}
}
else
{
throw new Exception("Folder path null.");
}
folderInput.Text = folderPath;
}
//attempt at method to select first 5 images of selected folder :
private async void Find_Images(object sender, RoutedEventArgs e)
{
string[] picturePath;
FileOpenPicker picPicker = new Windows.Storage.Pickers.FileOpenPicker();
picPicker.ViewMode = PickerViewMode.Thumbnail;
// Create the picker object and set options
picPicker.SuggestedStartLocation = Windows.Storage.Pickers.PickerLocationId.PicturesLibrary;
// Users expect to have a filtered view of their folders depending on the scenario.
// For example, when choosing a documents folder, restrict the filetypes to documents for your application.
picPicker.FileTypeFilter.Add(".png");
picPicker.FileTypeFilter.Add(".jpg");
picPicker.FileTypeFilter.Add(".jpeg");
picPicker.FileTypeFilter.Add(".gif");
picPicker.FileTypeFilter.Add(".bmp");
for (int i = 0; i < 5; i++)
{
StorageFile file = picPicker.//What can be called here to return paths ?
if (file != null)
{
picturePath[i] = file.path;
}
else
{
throw new Exception("File path null.");
}
}
}
誰かが私がこれを解決するのを手伝ってくれますか?
どうもありがとう。