Skip to content

Commit 3908581

Browse files
committed
feat(swipecontrol): Initial import
1 parent 3207821 commit 3908581

31 files changed

+7171
-0
lines changed

src/SamplesApp/UITests.Shared/UITests.Shared.projitems

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1489,6 +1489,22 @@
14891489
<SubType>Designer</SubType>
14901490
<Generator>MSBuild:Compile</Generator>
14911491
</Page>
1492+
<Page Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlClearPage.xaml">
1493+
<SubType>Designer</SubType>
1494+
<Generator>MSBuild:Compile</Generator>
1495+
</Page>
1496+
<Page Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlPage.xaml">
1497+
<SubType>Designer</SubType>
1498+
<Generator>MSBuild:Compile</Generator>
1499+
</Page>
1500+
<Page Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlPage2.xaml">
1501+
<SubType>Designer</SubType>
1502+
<Generator>MSBuild:Compile</Generator>
1503+
</Page>
1504+
<Page Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipePage.xaml">
1505+
<SubType>Designer</SubType>
1506+
<Generator>MSBuild:Compile</Generator>
1507+
</Page>
14921508
<Page Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SymbolIconTests\SymbolIcon_Generic.xaml">
14931509
<SubType>Designer</SubType>
14941510
<Generator>MSBuild:Compile</Generator>
@@ -5044,6 +5060,19 @@
50445060
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SplitView\SplitViewClip.xaml.cs">
50455061
<DependentUpon>SplitViewClip.xaml</DependentUpon>
50465062
</Compile>
5063+
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlClearPage.xaml.cs">
5064+
<DependentUpon>SwipeControlClearPage.xaml</DependentUpon>
5065+
</Compile>
5066+
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlPage.xaml.cs">
5067+
<DependentUpon>SwipeControlPage.xaml</DependentUpon>
5068+
</Compile>
5069+
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipeControlPage2.xaml.cs">
5070+
<DependentUpon>SwipeControlPage2.xaml</DependentUpon>
5071+
</Compile>
5072+
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\SwipePage.xaml.cs">
5073+
<DependentUpon>SwipePage.xaml</DependentUpon>
5074+
</Compile>
5075+
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SwipeControlTests\TestCommand.cs" />
50475076
<Compile Include="$(MSBuildThisFileDirectory)Windows_UI_Xaml_Controls\SymbolIconTests\SymbolIcon_Generic.xaml.cs">
50485077
<DependentUpon>SymbolIcon_Generic.xaml</DependentUpon>
50495078
</Compile>
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
<!-- Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See LICENSE in the project root for license information. -->
2+
<local:TestPage
3+
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
4+
x:Class="MUXControlsTestApp.SwipeControlClearPage"
5+
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
6+
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
7+
xmlns:local="using:MUXControlsTestApp"
8+
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
9+
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
10+
mc:Ignorable="d"
11+
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
12+
13+
14+
<Grid>
15+
<Grid.Resources>
16+
<muxc:SwipeItems x:Name="DefaultSwipeItemsHorizontal" >
17+
<muxc:SwipeItem Background="Orange" BehaviorOnInvoked="RemainOpen"></muxc:SwipeItem>
18+
</muxc:SwipeItems>
19+
<muxc:SwipeItem x:Name="DefaultSwipeItemHorizontal" Background="Orange" BehaviorOnInvoked="RemainOpen"></muxc:SwipeItem>
20+
<muxc:SwipeItems x:Name="DefaultSwipeItemsVertical">
21+
<muxc:SwipeItem Background="Orange" BehaviorOnInvoked="RemainOpen"></muxc:SwipeItem>
22+
</muxc:SwipeItems>
23+
<muxc:SwipeItem x:Name="DefaultSwipeItemVertical" Background="Orange" BehaviorOnInvoked="RemainOpen"></muxc:SwipeItem>
24+
</Grid.Resources>
25+
<Grid.RowDefinitions>
26+
<RowDefinition Height="Auto"></RowDefinition>
27+
</Grid.RowDefinitions>
28+
29+
<Grid.ColumnDefinitions>
30+
<ColumnDefinition Width="Auto" ></ColumnDefinition>
31+
<ColumnDefinition Width="Auto" ></ColumnDefinition>
32+
</Grid.ColumnDefinitions>
33+
34+
<Grid Grid.Row="0" Grid.Column="0" Margin="20">
35+
<Grid.RowDefinitions>
36+
<RowDefinition Height="100"></RowDefinition>
37+
<RowDefinition Height="20"></RowDefinition>
38+
<RowDefinition Height="100"></RowDefinition>
39+
</Grid.RowDefinitions>
40+
41+
<Grid.ColumnDefinitions>
42+
<ColumnDefinition Width="120"></ColumnDefinition>
43+
<ColumnDefinition Width="0"></ColumnDefinition>
44+
<ColumnDefinition Width="120"></ColumnDefinition>
45+
</Grid.ColumnDefinitions>
46+
<ListView Grid.Row="0" Grid.Column="0" x:Name="leftSwipe" SelectionMode="None">
47+
<ListView.ItemTemplate>
48+
<DataTemplate>
49+
<muxc:SwipeControl LeftItems="{StaticResource DefaultSwipeItemsHorizontal}">
50+
<Grid Background="#F25022" Width="100" Height="100" />
51+
</muxc:SwipeControl>
52+
</DataTemplate>
53+
</ListView.ItemTemplate>
54+
</ListView>
55+
<ListView Grid.Row="0" Grid.Column="2" x:Name="topSwipe" SelectionMode="None">
56+
<ListView.ItemTemplate>
57+
<DataTemplate>
58+
<muxc:SwipeControl TopItems="{StaticResource DefaultSwipeItemsVertical}">
59+
<Grid Background="#7FBA00" Width="100" Height="100" />
60+
</muxc:SwipeControl>
61+
</DataTemplate>
62+
</ListView.ItemTemplate>
63+
</ListView>
64+
<ListView Grid.Row="2" Grid.Column="0" x:Name="rightSwipe" SelectionMode="None">
65+
<ListView.ItemTemplate>
66+
<DataTemplate>
67+
<muxc:SwipeControl RightItems="{StaticResource DefaultSwipeItemsHorizontal}">
68+
<Grid Background="#00A4EF" Width="100" Height="100" />
69+
</muxc:SwipeControl>
70+
</DataTemplate>
71+
</ListView.ItemTemplate>
72+
</ListView>
73+
<ListView Grid.Row="2" Grid.Column="2" x:Name="bottomSwipe" SelectionMode="None">
74+
<ListView.ItemTemplate>
75+
<DataTemplate>
76+
<muxc:SwipeControl BottomItems="{StaticResource DefaultSwipeItemsVertical}">
77+
<Grid Background="#FFB900" Width="100" Height="100"/>
78+
</muxc:SwipeControl>
79+
</DataTemplate>
80+
</ListView.ItemTemplate>
81+
</ListView>
82+
83+
84+
85+
</Grid>
86+
87+
<StackPanel Grid.Row="0" Grid.Column="1">
88+
<Button Click="AddSwipeItemsButton_Click" x:Name="AddItemsButton" AutomationProperties.Name="AddItemsButton" Margin="0,0,0,8">Add SwipeItems</Button>
89+
<Button Click="ClearSwipeItemsButton_Click" x:Name="ClearItemsButton" AutomationProperties.Name="ClearItemsButton" Margin="0,0,0,8">Clear SwipeItems</Button>
90+
<TextBlock x:Name="SwipeItemsChildSum" AutomationProperties.Name="SwipeItemsChildSum" ></TextBlock>
91+
</StackPanel>
92+
93+
</Grid>
94+
</local:TestPage>
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
// Copyright (c) Microsoft Corporation. All rights reserved.
2+
// Licensed under the MIT License. See LICENSE in the project root for license information.
3+
4+
using System;
5+
using Windows.UI.Xaml;
6+
7+
namespace MUXControlsTestApp
8+
{
9+
/// <summary>
10+
/// Test page used for clearing existing SwipeControls
11+
/// </summary>
12+
public sealed partial class SwipeControlClearPage : TestPage
13+
{
14+
private string[] items = new string[] { "some text" };
15+
16+
public SwipeControlClearPage()
17+
{
18+
this.InitializeComponent();
19+
SwipeItemsChildSum.Text = (DefaultSwipeItemsHorizontal.Count + DefaultSwipeItemsVertical.Count).ToString();
20+
21+
leftSwipe.ItemsSource = items;
22+
topSwipe.ItemsSource = items;
23+
rightSwipe.ItemsSource = items;
24+
bottomSwipe.ItemsSource = items;
25+
}
26+
27+
public void AddSwipeItemsButton_Click(object sender, RoutedEventArgs e)
28+
{
29+
DefaultSwipeItemsHorizontal.Clear();
30+
DefaultSwipeItemsVertical.Clear();
31+
32+
DefaultSwipeItemsHorizontal.Mode = Microsoft.UI.Xaml.Controls.SwipeMode.Reveal;
33+
DefaultSwipeItemsHorizontal.Add(DefaultSwipeItemHorizontal);
34+
35+
// Using swipecontrol inside datatemplate prevents us from setting that:
36+
// Swipecontrol is in horizontal mode, can not add vertical swipe items...
37+
//DefaultSwipeItemsVertical.Mode = Microsoft.UI.Xaml.Controls.SwipeMode.Reveal;
38+
//DefaultSwipeItemsVertical.Add(DefaultSwipeItemVertical);
39+
40+
SwipeItemsChildSum.Text = (DefaultSwipeItemsHorizontal.Count + DefaultSwipeItemsVertical.Count).ToString();
41+
}
42+
public void ClearSwipeItemsButton_Click(object sender, RoutedEventArgs e)
43+
{
44+
DefaultSwipeItemsHorizontal.Clear();
45+
DefaultSwipeItemsVertical.Clear();
46+
SwipeItemsChildSum.Text = (DefaultSwipeItemsHorizontal.Count + DefaultSwipeItemsVertical.Count).ToString();
47+
}
48+
49+
}
50+
}

0 commit comments

Comments
 (0)