1
내 목록보기 항목이 나타나지 않습니다. 실제로 문서 라이브러리의 파일 이름을 목록보기에 수집하려고합니다.UWP-List보기 내용 비어 있음
<ListView x:Name="Mylist" SelectionMode="Single" ShowsScrollingPlaceholders="True"
Grid.ColumnSpan="2" ItemsSource="{x:Bind data}" >
<ListView.ItemTemplate>
<DataTemplate x:DataType="dat:Class1">
<StackPanel>
<TextBlock Text="{Binding Key}" Style="{StaticResource TitleTextBlockStyle}"/>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
클래스 1 파일 :
namespace App1{
public class Class1:List<object>
{
public Class1()
{
}
public string Items { get; set; }
public object Key { get; set; }
}}
Mainpagexaml.cs
public ObservableCollection<Class1> _data;
public ObservableCollection<Class1> data { get { return _data; } }
public MainPage()
{
this.InitializeComponent();
}
protected async override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
_data = await Data.ItemsGrouped();
}
Data.cs
,536,913 여기 은 XAML입니다public async static Task<ObservableCollection<Class1>> generatename()
{
ObservableCollection<Class1> newdata = new ObservableCollection<Class1>();
//var myfiles = await getfiles();
StorageFolder folder = await KnownFolders.GetFolderForUserAsync(null, KnownFolderId.DocumentsLibrary);
List<string> filetypefilter = new List<string>();
filetypefilter.Add(".mp3");
QueryOptions query = new QueryOptions(CommonFileQuery.OrderBySearchRank, filetypefilter);
StorageFileQueryResult queryresult = folder.CreateFileQueryWithOptions(query);
IReadOnlyList<StorageFile> files = await queryresult.GetFilesAsync();
foreach (var file in files)
{
newdata.Add(new Class1() { Items = file.Name });
var f = file.Name;
}
return newdata;
}
public async static Task<ObservableCollection<Class1>> ItemsGrouped()
{
ObservableCollection<Class1> cgroup = new ObservableCollection<Class1>();
var x = await generatename();
var query = from item in x
group item by item.Items[0] into g
orderby g.Key
select new { GroupName = g.Key, Items = g };
foreach (var item in query)
{
Class1 c1 = new Class1();
c1.Key = item.GroupName;
foreach (var item2 in item.Items)
{
c1.Add(item2);
c1.Items = item2.Items;
}
cgroup.Add(c1);
}
return cgroup;
}
파일 이름이 data.cs 파일에서 읽히지 만 UI에서는 결과가 없습니다.
관찰 할 수있는 컬렉션을위한 AddRange 속성이 없습니다 ... –
foreach를 수행합니다. –
그게 효과가 있습니다. 이제, 항목을 CollectionViewSource로 그룹화하여 알파벳 순으로 그룹화 할 수 있습니까? this : MyView.Source = await getItems(); onNavigatedTo 메소드 안에는 getItems()에 foreach 메소드가 들어 있습니다. –