65 lines
2.5 KiB
C#
65 lines
2.5 KiB
C#
using Windows.UI.Xaml.Controls;
|
|
using FileManager_UWP.ViewModel;
|
|
using System.Collections.ObjectModel;
|
|
using FileManager_UWP.Model;
|
|
using System.Diagnostics;
|
|
using FileManager_UWP.Controls;
|
|
|
|
namespace FileManager_UWP.View {
|
|
|
|
public sealed partial class FileListView : Page {
|
|
|
|
//public ObservableCollection<LabelItem> Labels =
|
|
// new ObservableCollection<LabelItem>{
|
|
// new LabelItem("照片"),
|
|
// new LabelItem("土耳其摔跤"),
|
|
// new LabelItem("李若明"),
|
|
// new LabelItem("鸢晓曼"),
|
|
// new LabelItem("才明洋与吴岳江进行土耳其摔跤"),
|
|
// new LabelItem("真正的瑜伽大师")
|
|
// };
|
|
|
|
private FileListViewModel vm;
|
|
public FileListView() {
|
|
this.InitializeComponent();
|
|
vm = new FileListViewModel();
|
|
DataContext = vm;
|
|
vm.RefreshCommand.Execute(null);
|
|
vm.PropertyChanged += Vm_PropertyChanged;
|
|
}
|
|
|
|
private void Vm_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) {
|
|
Debug.WriteLine(e.PropertyName);
|
|
if (e.PropertyName == "DisplayFileFolderItems") {
|
|
var items = (sender as FileListViewModel).DisplayFileFolderItems;
|
|
MicroShitList.Items.Clear();
|
|
foreach (var displayFileItem in items) {
|
|
StackPanel sp = new StackPanel();
|
|
sp.Height = 44;
|
|
sp.Padding = new Windows.UI.Xaml.Thickness(12);
|
|
sp.Orientation = Orientation.Horizontal;
|
|
sp.SetValue(StackPanel.TagProperty, displayFileItem);
|
|
|
|
Image Icon = new Image();
|
|
Icon.Source = displayFileItem.Icon;
|
|
Icon.Height = 16;
|
|
Icon.Width = 16;
|
|
Icon.VerticalAlignment = Windows.UI.Xaml.VerticalAlignment.Center;
|
|
TextBlock Name = new TextBlock();
|
|
Name.Text = displayFileItem.Name;
|
|
Name.Margin = new Windows.UI.Xaml.Thickness(12, 0, 0, 0);
|
|
|
|
LabelListControl labels = new LabelListControl();
|
|
labels.ItemsSource = displayFileItem.Labels;
|
|
|
|
sp.Children.Add(Icon);
|
|
sp.Children.Add(Name);
|
|
sp.Children.Add(labels);
|
|
MicroShitList.Items.Add(sp);
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|