Skip to content

Commit

Permalink
Update samples (#1015)
Browse files Browse the repository at this point in the history
  • Loading branch information
marcelwgn committed Nov 11, 2022
1 parent b983e8b commit a1beb08
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 14 deletions.
36 changes: 28 additions & 8 deletions WinUIGallery/ControlPages/BreadcrumbBarPage.xaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@
<BreadcrumbBar x:Name="BreadcrumbBar1"/>
</x:String>
</local:ControlExample.Xaml>
<local:ControlExample.CSharp>
<x:String xml:space="preserve">
BreadcrumbBar1.ItemsSource = new string[] { "Home", "Documents", "Design", "Northwind", "Images", "Folder1", "Folder2", "Folder3" };
</x:String>
</local:ControlExample.CSharp>
</local:ControlExample>

<local:ControlExample x:Name="Example2" HeaderText="BreadCrumbBar Control with Custom DataTemplate">
Expand All @@ -44,6 +49,11 @@
</BreadcrumbBar.ItemTemplate>
</BreadcrumbBar>
</local:ControlExample.Example>

<local:ControlExample.Options>
<Button Content="Reset sample" Click="ResetSampleButton_Click"/>
</local:ControlExample.Options>

<local:ControlExample.Xaml>
<x:String xml:space="preserve">
&lt;BreadcrumbBar x:Name="BreadcrumbBar1"&gt;
Expand All @@ -64,16 +74,26 @@
<local:ControlExample.CSharp>
<x:String xml:space="preserve">
public class Folder
{
public string Name { get; set; }
}

BreadcrumbBar2.ItemsSource = new List&lt;Folder&gt;
{
new Folder { Name = "Home"},
new Folder { Name = "Folder1" },
new Folder { Name = "Folder2" }
public string Name { get; set; }
}

BreadcrumbBar2.ItemsSource = new ObservableCollection&lt;Folder&gt;{
new Folder { Name = "Home"},
new Folder { Name = "Folder1" },
new Folder { Name = "Folder2" },
new Folder { Name = "Folder3" },
};
BreadcrumbBar2.ItemClicked += BreadcrumbBar2_ItemClicked;

private void BreadcrumbBar2_ItemClicked(BreadcrumbBar sender, BreadcrumbBarItemClickedEventArgs args)
{
var items = BreadcrumbBar2.ItemsSource as ObservableCollection&lt;Folder&gt;
for (int i = items.Count - 1; i >= args.Index + 1; i--)
{
items.RemoveAt(i);
}
}
</x:String>
</local:ControlExample.CSharp>
</local:ControlExample>
Expand Down
34 changes: 28 additions & 6 deletions WinUIGallery/ControlPages/BreadcrumbBarPage.xaml.cs
Original file line number Diff line number Diff line change
@@ -1,23 +1,45 @@
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using Microsoft.UI.Xaml.Controls;


namespace AppUIBasics.ControlPages
{
public sealed partial class BreadcrumbBarPage : Page
{

readonly List<Folder> folders = new() {
new Folder { Name = "Home"},
new Folder { Name = "Folder1" },
new Folder { Name = "Folder2" },
new Folder { Name = "Folder3" },
};

public BreadcrumbBarPage()
{
this.InitializeComponent();
BreadcrumbBar1.ItemsSource = new string[] { "Home", "Documents", "Design", "Northwind", "Images", "Folder1", "Folder2", "Folder3" };

BreadcrumbBar2.ItemsSource = new List<Folder>
BreadcrumbBar2.ItemsSource = new ObservableCollection<Folder>(folders);
BreadcrumbBar2.ItemClicked += BreadcrumbBar2_ItemClicked;
}

private void BreadcrumbBar2_ItemClicked(BreadcrumbBar sender, BreadcrumbBarItemClickedEventArgs args)
{
var items = BreadcrumbBar2.ItemsSource as ObservableCollection<Folder>;
for (int i = items.Count - 1; i >= args.Index + 1; i--)
{
items.RemoveAt(i);
}
}

private void ResetSampleButton_Click(object sender, Microsoft.UI.Xaml.RoutedEventArgs e)
{
var items = BreadcrumbBar2.ItemsSource as ObservableCollection<Folder>;
for (int i = items.Count; i < folders.Count; i++)
{
new Folder { Name = "Home"},
new Folder { Name = "Folder1" },
new Folder { Name = "Folder2" }
};
items.Add(folders[i]);
}
}
}

Expand Down

0 comments on commit a1beb08

Please sign in to comment.