我收到一个错误:名称" local:ThumbnailConverter"在使用.Notes
的命名空间中不存在所有文件都在名称空间Notes
中Converters.Cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Windows.Storage.Streams;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Media.Imaging;
namespace Notes
{
public class ThumbnailConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string culture)
{
if (value != null)
{
var thumbnailStream = (IRandomAccessStream)value;
var image = new BitmapImage();
image.SetSource(thumbnailStream);
return image;
}
return DependencyProperty.UnsetValue;
}
public object convertBack(object value, Type targetType, object parameter, string culture)
{
throw new NotImplementedException();
}
}
}
MainPage.xaml中
<Page
x:Class="Notes.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Notes"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d">
<UserControl.Resources>
<local:ThumbnailConverter x:Name="thumbnailConverter" />
<DataTemplate x:Key="Custom190x130ItemTemplate">
<Grid Width="190" Height="130">
<Border Background="{StaticResource ListViewItemPlaceholderBackgroundThemeBrush}" Width="190" Height="130">
<Image Source="{Binding Path=Thumbnail, Converter={StaticResource thumbnailConverter}}" Width="190" Height="130"/>
</Border>
</Grid>
</DataTemplate>
<CollectionViewSource x:Name="itemViewSource" />
</UserControl.Resources>
<GridView x:Name="itemGridView"
AutomationProperties.AutomationId="ItemGridView"
AutomationProperties.Name="Items"
Grid.Row="1"
ItemsSource="{Binding Source={StaticResource itemsViewSource}}"
ItemTemplate="{StaticResource Custom190x130ItemTemplate}"
SelectionMode="None" />
</Page>
现在是MainPage.xaml.cs
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.Storage.BulkAccess;
using Windows.Storage.Streams;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Media.Imaging;
using Windows.UI.Xaml.Navigation;
// The Blank Page item template is documented at http://go.microsoft.com/fwlink/?LinkId=234238
namespace Notes
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
//query jisse data retrieve karenge
var filterType = new string[] { ".jpg", ".png" };
var options = new Windows.Storage.Search.QueryOptions(Windows.Storage.Search.CommonFileQuery.OrderByDate, filterType);
options.ApplicationSearchFilter = "System.Photo.DateTaken:>System.StructuredQueryType.DateTime#LastMonth";
var fileQuery = Windows.Storage.KnownFolders.PicturesLibrary.CreateFileQueryWithOptions(options);
//creating the data source
var fileInformationFactory = new FileInformationFactory(fileQuery,Windows.Storage.FileProperties.ThumbnailMode.PicturesView,190,Windows.Storage.FileProperties.ThumbnailOptions.UseCurrentScale,true);
}
}
}
请帮助解决可能的解决方案!提前致谢
答案 0 :(得分:0)
在XAML中声明命名空间的正确方法如下:
xmlns:MyNamespace="clr-namespace:Your.Namespace.Here"
所以在你的情况下,它看起来像这样:
xmlns:local="clr-namespace:Notes"