Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/animations/AnimationBuilder.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The [`AnimationBuilder`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit

## Default animations

These are "ready to use" APIs that create specific animations for commonly used properties. They require little setup on the user side, with no need to deal with explicit property paths to animate. Examples of these are animations such as `Opacity`, `Offset` and `Translation`. Each of these default animation APIs also expose a number of overloads that can be used to easily customize how the animation is constructed. For instance by specifying a single translation axis to animate only using a single `double` value to indicate the initial and ending value for the animation:
These are "ready to use" APIs that create specific animations for commonly used properties. They require little setup on the user side, with no need to deal with explicit property paths to animate. Examples of these are animations such as `Opacity`, `Offset` and `Translation`. Each of these default animation APIs also expose a number of overloads that can be used to easily customize how the animation is constructed. For instance by specifying a single translation axis to animate only using a single `double` value to indicate the initial and ending value for the animation:

```csharp
// Here we're creating a schedule with 3 different default animations.
Expand Down
4 changes: 2 additions & 2 deletions docs/animations/AnimationSet.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ The [`AnimationSet`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp

Each set can contain any number of animation scopes and individual nodes, which can be either animations or "activities":

- **Animation types** are a mapping in XAML for the various APIs exposed by the `AnimationBuilder` class. They are available as both "default" animations that are ready to use and "custom" animations that can be fully configured. Each animation type also supports using keyframes in addition to just defining the starting and final values.
- **Animation types** are a mapping in XAML for the various APIs exposed by the `AnimationBuilder` class. They are available as both "default" animations that are ready to use and "custom" animations that can be fully configured. Each animation type also supports using keyframes in addition to just defining the starting and final values.
- **Activites** on the other hand are a way to interleave an animation schedule with all sorts of custom logic, such as triggering other animations or running arbitrary code (eg. to update a visual state while an animation is running).

These two types of animation nodes implement several interfaces (such as [`ITimeline`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp.ui.animations.ITimeline) and [`IActivity`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp.ui.animations.IActivity)) which make this system extremely customizable and extensible for users as well for their own scenarios.
Expand Down Expand Up @@ -75,7 +75,7 @@ Keyframes (both when declared in C# and in XAML) can also use an [expression ani

## Sequential mode

Another feature of the `AnimationSet` type is the `IsSequential` property which configures the way top-level elements (animations, activities, and scopes) within the animation are handled.
Another feature of the `AnimationSet` type is the `IsSequential` property which configures the way top-level elements (animations, activities, and scopes) within the animation are handled.

When this property is set to `true` each top-level node will be executed sequentially and only move to the following one when the previous completes (and the animation has not been cancelled). This can be used in conjunction with the various `IActivity` objects to create custom animation schedules that combine multiple animations running on different UI elements, with all the synchronization still done entirely from XAML. It is also helpful when combined with an [`AnimationScope`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp.ui.animations.AnimationScope) in order to more easily parse the timeline of events within an animation when creating and modifying them.

Expand Down
2 changes: 1 addition & 1 deletion docs/controls/HeaderedContentControl.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The [HeaderedContentControl](https://docs.microsoft.com/dotnet/api/microsoft.too

## Sample Output

![HeaderedContentControl](../resources/images/Controls/HeaderedContentControl.jpg)
![HeaderedContentControl Sample](../resources/images/Controls/HeaderedContentControl.jpg)

## Properties

Expand Down
2 changes: 1 addition & 1 deletion docs/controls/HeaderedItemsControl.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ The [HeaderedItemsControl](https://docs.microsoft.com/dotnet/api/microsoft.toolk

## Sample Output

![HeaderedItemsControl](../resources/images/Controls/HeaderedItemsControl.jpg)
![HeaderedItemsControl Sample](../resources/images/Controls/HeaderedItemsControl.jpg)

## Properties

Expand Down
2 changes: 1 addition & 1 deletion docs/controls/TextToolbar.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ You can also Remove Default Buttons from any format, or Add Custom buttons to an

## Sample Output

![TextToolbar](../resources/images/Controls/TextToolbar.png)
![TextToolbar Sample](../resources/images/Controls/TextToolbar.png)

## Properties

Expand Down
4 changes: 2 additions & 2 deletions docs/controls/datagrid_guidance/editing_inputvalidation.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The [DataGrid](../datagrid.md) control supports cell and row editing functionali
<controls:DataGrid BeginningEdit="dg_Editing" CellEditEnding="dg_CellEditEnding" RowEditEnding="dg_RowEditEnding" />
```

![Sample editing UI](../../resources/images/Controls/DataGrid/editing.png)
![Sample edit UI](../../resources/images/Controls/DataGrid/editing.png)

A cell-level edit is committed when you move to another cell in the same row. All edits in a row are committed when you press ENTER or move to another row.

Expand Down Expand Up @@ -51,7 +51,7 @@ Event | RowEditEnded | Occurs when a row edit has been committed or canceled.

DataGrid control supports input validation through **INotifyDataErrorInfo** in your DataModel or ViewModel. Implement data validation logic by implementing **DataErrorsChangedEventArgs**, **HasErrors** and **GetErrors** methods. The DataGrid control automatically shows the error UI in the editing cell/row when the error conditions are met.

![Sample validation UI](../../resources/images/Controls/DataGrid/validation.png)
![Sample UI with INotifyDataErrorInfo](../../resources/images/Controls/DataGrid/validation.png)

See [DataGrid Sample](https://github.com/Microsoft/WindowsCommunityToolkit/tree/master/Microsoft.Toolkit.Uwp.SampleApp/SamplePages/DataGrid) for an example of how to handle input validation in the DataGrid control.

Expand Down
2 changes: 1 addition & 1 deletion docs/controls/datagrid_guidance/group_sort_filter.md
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@ The following walk-through shows how to implement sorting in the DataGrid contro
</controls:DataGrid>
```

2. Handle the Sorting event to implement logic for sorting
2. Handle the Sorting event to implement logic for sorting

```csharp
private void dg_Sorting(object sender, DataGridColumnEventArgs e)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ The DataGrid control supports single row selection as well as multiple rows sele
<controls:DataGrid SelectionMode="Extended"/>
```

![Sample selection UI](../../resources/images/Controls/DataGrid/selection.png)
![Sample for SelectionMode](../../resources/images/Controls/DataGrid/selection.png)

If the **SelectionMode** property is set to **Extended**, the navigation behavior does not change, but navigating with the keyboard while pressing SHIFT (including CTRL+SHIFT) will modify a multi-row selection. Before navigation starts, the control marks the current row as an anchor row. When you navigate while pressing SHIFT, the selection includes all rows between the anchor row and the current row.

Expand Down
4 changes: 2 additions & 2 deletions docs/controls/layout/StaggeredLayout.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: StaggeredLayout
author: skendrot
description: Arranges child elements into a staggered grid pattern.
keywords: windows 10, uwp, windows community toolkit, uwp community toolkit, uwp toolkit, StaggeredLayout, layout
description: Arranges child elements into a staggered grid pattern for ItemsRepeater.
keywords: windows 10, uwp, windows community toolkit, uwp community toolkit, uwp toolkit, StaggeredLayout, layout, itemsrepeater
---

# StaggeredLayout
Expand Down
4 changes: 2 additions & 2 deletions docs/controls/layout/WrapLayout.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
---
title: WrapLayout XAML Layout Panel
author: skendrot
description: The WrapLayout layout panel Positions child elements in sequential position from left to right, breaking content to the next line at the edge of the containing box.
keywords: windows 10, uwp, windows community toolkit, uwp community toolkit, uwp toolkit, WrapLayout, XAML Control, xaml, layout
description: The WrapLayout layout panel Positions child elements in sequential position from left to right, breaking content to the next line at the edge of the containing box for ItemsRepeater.
keywords: windows 10, uwp, windows community toolkit, uwp community toolkit, uwp toolkit, WrapLayout, XAML Control, xaml, layout, itemsrepeater
---

# WrapLayout XAML Layout Panel
Expand Down
1 change: 0 additions & 1 deletion docs/extensions/NullableBoolMarkup.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ The [NullableBool Markup Extension](https://docs.microsoft.com/dotnet/api/micros
## Syntax

```xaml

<Page.Resources>
<helpers:ObjectWithNullableBoolProperty x:Key="OurObject" NullableBool="{ex:NullableBool Value=True}"/>
</Page.Resources>
Expand Down
2 changes: 1 addition & 1 deletion docs/extensions/TextBoxExtensions.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ The developer adds a regular expression to validate the TextBox Text against the
The validation has 3 modes ([`TextBoxExtensions.ValidationMode`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp.ui.TextBoxExtensions.ValidationMode)):

1) `Normal` (Default): this mode will set the `IsValid` attached property to `false` or `true` whether the `TextBox` text is a valid or not against the `Regex` property.
2) `Forced`: this mode sets the `IsValid` property and removes the `TextBox` text if not valid when the `TextBox` loses focus.
2) `Forced`: this mode sets the `IsValid` property and removes the `TextBox` text if not valid when the `TextBox` loses focus.
3) `Dynamic`: this mode extends `Normal` and if is the newest input of the `TextBox` is invalid, the character which is invalid will be deleted. Note that the [`TextBoxExtensions.ValidationType`](https://docs.microsoft.com/dotnet/api/microsoft.toolkit.uwp.ui.TextBoxExtensions.ValidationType) values `Email` and `PhoneNumber` don't support this validation mode. If you set the validation mode to `Dynamic`, `Normal` is selected automatically instead.

### Syntax
Expand Down