diff --git a/wpf/Add-Syncfusion-Controls.md b/wpf/Add-Syncfusion-Controls.md
index f43457ac7..d2a3a28e0 100644
--- a/wpf/Add-Syncfusion-Controls.md
+++ b/wpf/Add-Syncfusion-Controls.md
@@ -8,19 +8,22 @@ documentation: ug
---
# Add Syncfusion® WPF Controls
-The Syncfusion® WPF controls can be added in a Visual Studio projects by using either of the following ways:
+
+The Syncfusion® WPF controls can be added to a Visual Studio project by using any of the following ways:
* Using Designer
+* Using XAML
* Using Code-Behind
* Using Project Template
## Using Designer
-Syncfusion® UI for WPF are added automatically to the Visual Studio Toolbox during installation. The following steps help you to add the required Essential® WPF control using drag and drop from the Toolbox. For example: **SfTextBoxExt**
+
+Syncfusion® UI for WPF controls are added automatically to the Visual Studio Toolbox during the installation. The following steps help you to add the required Essential® WPF control using drag and drop from the Toolbox. For example: **SfTextBoxExt**
1. Create a WPF project in Visual Studio.
-2. Find **SfTextBoxExt** by typing the name of the "SfTextBoxExt" in the search box.
+2. Find **SfTextBoxExt** by typing "SfTextBoxExt" in the search box of the Toolbox.

@@ -28,12 +31,12 @@ Syncfusion® UI for WPF are added automatically to the Visual Stud

-### Using XAML
-The following steps help you to add a required Essential® WPF Control using XAML Code, for example: **SfTextBoxExt**.
+## Using XAML
-1. Create a WPF project in Visual Studio and refer the following assemblies:
+The following steps help you to add the required Essential® WPF control using XAML, for example: **SfTextBoxExt**.
+1. Create a WPF project in Visual Studio and refer the following assemblies:
* Syncfusion.SfInput.WPF.dll
* Syncfusion.SfShared.WPF.dll
@@ -47,7 +50,7 @@ The following steps help you to add a required Essential® WPF Con
+ xmlns:syncfusion="http://schemas.syncfusion.com/wpf">
{% endhighlight %}
@@ -55,7 +58,7 @@ The following steps help you to add a required Essential® WPF Con
{% endcapture %}
{{ codesnippet1 | OrderList_Indent_Level_1 }}
-3. Now, add the SfTextBoxExt control with a required optimal name using the included namespace.
+3. Now, add the SfTextBoxExt control with the required name using the included namespace.
{% capture codesnippet2 %}
{% tabs %}
@@ -72,13 +75,15 @@ The following steps help you to add a required Essential® WPF Con
## Using Code-Behind
-Syncfusion® UI for WPF can be added at runtime using C# / VB. The following steps help you to add required Essential® WPF control using code. For example: **SfTextBoxExt**.
+
+Syncfusion® UI for WPF controls can be added at runtime using C# / VB. The following steps help you to add a required Essential® WPF control using code. For example: **SfTextBoxExt**.
1. Create a WPF project in Visual Studio and refer to the following assemblies:
* Syncfusion.SfInput.WPF.dll
* Syncfusion.SfShared.WPF.dll
+
2. Create an instance of **SfTextBoxExt**, using its namespace.
{% capture codesnippet3 %}
@@ -86,13 +91,17 @@ Syncfusion® UI for WPF can be added at runtime using C# / VB. The
{% highlight C# %}
-Syncfusion.Windows.Controls.Input.SfTextBoxExt textBoxExt1 = new Syncfusion.Windows.Controls.Input.SfTextBoxExt();
+using Syncfusion.Windows.Controls.Input;
+
+SfTextBoxExt textBoxExt1 = new SfTextBoxExt();
{% endhighlight %}
{% highlight VB %}
-Dim textBoxExt1 As New Syncfusion.Windows.Controls.Input.SfTextBoxExt()
+Imports Syncfusion.Windows.Controls.Input
+
+Dim textBoxExt1 As New SfTextBoxExt()
{% endhighlight %}
@@ -100,7 +109,8 @@ Dim textBoxExt1 As New Syncfusion.Windows.Controls.Input.SfTextBoxExt()
{% endcapture %}
{{ codesnippet3 | OrderList_Indent_Level_1 }}
-3. Set the Size and Alignment of the control with required value.
+
+3. Set the Size and Alignment of the control with the required values.
{% capture codesnippet4 %}
{% tabs %}
@@ -129,7 +139,8 @@ textBoxExt1.HorizontalAlignment = HorizontalAlignment.Center
{% endcapture %}
{{ codesnippet4 | OrderList_Indent_Level_1 }}
-4. Add the created instance to the parent window (or the needed layout panels).
+
+4. Add the created instance to the parent window (or to a layout panel such as a `Grid`).
{% capture codesnippet5 %}
{% tabs %}
@@ -198,7 +209,8 @@ N> Minimum target Framework is 4.0 for Syncfusion® WPF project te

-
+
+`
5. Then, Syncfusion® licensing registration required message box will be shown as follows, if you have installed the trial setup or NuGet packages since Syncfusion introduced the licensing system with the 2018 Volume 2 (v16.2.0.41) Essential Studio® release. Please navigate to the [help topic](https://help.syncfusion.com/common/essential-studio/licensing/license-key#how-to-generate-syncfusion-license-key), which is shown in the licensing message box to generate and register the Syncfusion® license key for your project. Refer to this [blog](https://blog.syncfusion.com/post/Whats-New-in-2018-Volume-2-Licensing-Changes-in-the-1620x-Version-of-Essential-Studio.aspx) post for understanding the licensing changes introduced in Essential Studio®.
diff --git a/wpf/Blend-Support.md b/wpf/Blend-Support.md
index 4f4a98433..1386ccfff 100644
--- a/wpf/Blend-Support.md
+++ b/wpf/Blend-Support.md
@@ -9,57 +9,46 @@ documentation: ug
# Getting Started with Blend Support
-Essential® WPF control's Style and Template can be editable in Expression Blend and this section explains the same.
+
+Essential® WPF control's Style and Template can be edited in Expression Blend and this section explains the same.
## Edit Control Style in Expression Blend
-1.Open an application in Expression Blend.
+1. Open an application in Expression Blend.
-2.Expand the Views, choose `Other Windows` and then choose `Objects` and `Timeline`.
+2. Expand the `Views` menu, choose `Other Windows`, and then choose `Objects and Timeline`.
3.In the “Objects and Timeline” pane, select a Syncfusion® control to modify a style.

-4.Expand the format, then choose `Edit Style` menu.
+4. The `Edit Style` menu provides the following options:

-5.It provides the following options:
-
- * Edit Current – To edit the current style. This option is disabled when control do not have a Style.
- * Edit a Copy – Helps you to edit a copy of default style. When it is selected, Create Style Resource dialog box is opened, this dialog box is used to select the name for style as well as the location where file is defined.
-
-
-
-
- * Create Empty – This option helps you to create an empty style for selected control. When it is selected, the same Create Style Resource dialog box is opened and it is used to select the name for style as well as choose the location.
+5. In the **Create Style Resource** dialog box, choose a name for the style and select **Define in: Application** (to make it available application-wide) or **Define in: this document** (to scope it to a specific resource dictionary or the current view), and then click **OK**. The style is added to the XAML and the designer surfaces it for editing.
## Edit ControlTemplate in Expression Blend
-1.Open an application in Expression Blend.
+1. Open an application in Expression Blend.
-2.Expand the Views, choose `Other Windows` and then choose `Objects` and `Timeline`.
+2. Expand the `Views` menu, choose `Other Windows`, and then choose `Objects and Timeline`.
-3.In the “Objects and Timeline” pane, select a Syncfusion® control to modify a template.
+3. In the "Objects and Timeline" pane, select a Syncfusion® control to modify a template.

-4.Right-click the Syncfusion® control and choose `Edit` template
+4. Right-click the Syncfusion® control and choose `Edit Template`.

-5.It provides the following options:
-
-* Edit Current – To edit the current template of the control. This option is disabled when control do not have a template.
-* Edit a Copy – Helps to edit the default template. When it is selected, Create ControlTemplate Resource dialog box is opened. This dialog box is used to select the name for template as well as the location where file is defined.
-
-
-
+5. The `Edit Template` menu provides the following options:
-* Create Empty – This option helps you to create an empty template for selected control. When it is selected, the same dialog box is opened. It is used to select the name for template as well as the location.
+* **Edit Current** – To edit the current template of the control. This option is disabled when the control does not have a template.
+* **Edit a Copy** – Helps you to edit a copy of the default template. When it is selected, the Create ControlTemplate Resource dialog box is opened. This dialog box is used to select the name for the template as well as the location where the template is defined.
+* **Create Empty** – This option helps you to create an empty template for the selected control. When it is selected, the same Create ControlTemplate Resource dialog box is opened. It is used to select the name for the template as well as the location.
diff --git a/wpf/Control-Dependencies.md b/wpf/Control-Dependencies.md
index 13adf7b5c..12268e67f 100644
--- a/wpf/Control-Dependencies.md
+++ b/wpf/Control-Dependencies.md
@@ -1,7 +1,7 @@
---
layout: post
-title: Control Dependencies and Dependency assembly | WPF | Syncfusion
-description: Control and it's Dependency assembly or NuGet reference details for Syncfusion Essential Studio WPF products
+title: Control Dependencies and Dependency Assemblies | WPF | Syncfusion
+description: Control and its dependency assembly or NuGet reference details for Syncfusion Essential Studio WPF products
platform: wpf
control: Control Dependencies
documentation: ug
@@ -9,11 +9,11 @@ documentation: ug
# Control Dependencies in Syncfusion®'s WPF Controls
-This section contains a list of assembly or NuGet references required to use any control in the application. You can refer to the [installation and deployment section](https://help.syncfusion.com/wpf/installation-and-upgrade/system-requirements) to know about assembly installation location and [NuGet packages](https://help.syncfusion.com/wpf/installation/install-nuget-packages) section to know how to add NuGet reference.
+This section contains a list of assembly or NuGet references required to use any control in the application. You can refer to the [installation and deployment section](https://help.syncfusion.com/wpf/installation-and-upgrade/system-requirements) to know where the assemblies are installed and the [NuGet packages](https://help.syncfusion.com/wpf/installation/install-nuget-packages) section to know how to add a NuGet reference.
-You can refer to the [syncfusion controls section](https://help.syncfusion.com/wpf/add-syncfusion-controls) to learn how to add syncfusion® control.
+You can refer to the [Syncfusion controls section](https://help.syncfusion.com/wpf/add-syncfusion-controls) to learn how to add a Syncfusion® control.
-N> Starting with version 16.2(2018 Vol 2), the `Syncfusion.Licensing.dll` will be added as reference for all the Syncfusion WPF controls. Please refer to this [help topic](https://help.syncfusion.com/common/essential-studio/licensing/license-key), for more information.
+N> Starting with version 16.2 (2018 Vol 2), the `Syncfusion.Licensing.dll` will be added as a reference for all the Syncfusion WPF controls. Please refer to this [help topic](https://help.syncfusion.com/common/essential-studio/licensing/license-key) for more information.
## AutoComplete
@@ -555,7 +555,7 @@ Syncfusion.OlapChart.WPF
### Exporting OLAP chart to PDF, Word, and Image
-In addition to the above assemblies, the following reference needs to be added to export OLAP chart contents to PDF, word, and image.
+In addition to the above assemblies, the following reference needs to be added to export OLAP chart contents to PDF, Word, and Image.
@@ -649,7 +649,7 @@ Syncfusion.OlapGrid.WPF
### Exporting OLAP grid to Excel, Word, PDF, and CSV
-In addition to the above assemblies, the following reference needs to be added to export OLAP grid contents to excel, word, PDF, and CSV.
+In addition to the above assemblies, the following reference needs to be added to export OLAP grid contents to Excel, Word, PDF, and CSV.
@@ -744,7 +744,7 @@ Syncfusion.PivotTable.Wpf
### Exporting pivot grid to Excel, Word, PDF, and CSV
-In addition to the above assemblies, the following reference needs to be added to export pivot grid contents to excel, word, PDF, and CSV.
+In addition to the above assemblies, the following reference needs to be added to export pivot grid contents to Excel, Word, PDF, and CSV.
Assembly references
@@ -859,10 +859,10 @@ Syncfusion.OfficeChart.Base
Syncfusion.RichTextBoxAdv.WPF
Syncfusion.Shared.WPF
-For 3.5 and 4.0 frameworks:
+For .NET Framework 3.5 and 4.0:
Syncfusion.DocIO.ClientProfile
-For 4.5 and higher frameworks:
+For .NET Framework 4.5 and higher:
Syncfusion.DocIO.Base
@@ -1120,7 +1120,7 @@ Syncfusion.SfGrid.WPF
### Exporting DataGrid to Excel, PDF, and CSV
-The following reference needs to be added in your application for exporting DataGrid to excel, pdf, and csv.
+The following reference needs to be added in your application for exporting DataGrid to Excel, PDF, and CSV.
@@ -1576,9 +1576,9 @@ Syncfusion.Compression.Base
Syncfusion.OfficeChart.Base
Syncfusion.Shared.WPF
-For 3.5 and 4.0 frameworks:
+For .NET Framework 3.5 and 4.0:
Syncfusion.DocIO.ClientProfile
-For 4.5 and higher frameworks:
+For .NET Framework 4.5 and higher:
Syncfusion.DocIO.Base
@@ -1603,9 +1603,9 @@ Syncfusion.SfRichTextBoxAdv.WPF
Syncfusion.Shared.WPF
Syncfusion.Tools.WPF
-For 3.5 and 4.0 frameworks:
+For .NET Framework 3.5 and 4.0:
Syncfusion.DocIO.ClientProfile
-For 4.5 and higher frameworks:
+For .NET Framework 4.5 and higher:
Syncfusion.DocIO.Base
@@ -1716,7 +1716,7 @@ Syncfusion.SfSpreadsheetHelper.WPF
### Exporting SfSpreadsheet to PDF
-The following references need to be added in your application for exporting SfSpreadsheet to pdf.
+The following references need to be added in your application for exporting SfSpreadsheet to PDF.
@@ -1860,7 +1860,7 @@ Syncfusion.SfGrid.WPF
### Exporting TreeGrid to Excel, PDF, and CSV
-The following references need to be added in your application for exporting TreeGrid to excel, pdf, and csv.
+The following references need to be added in your application for exporting TreeGrid to Excel, PDF, and CSV.
Assembly references
diff --git a/wpf/Localization.md b/wpf/Localization.md
index d4cf41ea2..add9c1937 100644
--- a/wpf/Localization.md
+++ b/wpf/Localization.md
@@ -1,7 +1,7 @@
---
layout: post
title: Localization in Syncfusion WPF UI Controls | Syncfusion
-description: Learn about Localization support in Syncfusion WPF UI Contorls using .RESX files and also explains editing default strings of WPF controls.
+description: Learn about Localization support in Syncfusion WPF UI Controls using .RESX files and also explains editing default strings of WPF controls.
platform: wpf
control: Localization
documentation: ug
@@ -9,7 +9,7 @@ documentation: ug
# Localization of Syncfusion® WPF Controls
-Localization is the process of translating the application resources into different language for the specific cultures. You can localize the syncfusion® WPF controls by adding a resource file for each language.
+Localization is the process of translating the application resources into different languages for specific cultures. You can localize the Syncfusion® WPF controls by adding a resource file for each language.
## Changing application culture
@@ -54,7 +54,7 @@ N> You can get the default resource files of all Syncfusion® WPF
2) Add the [default resource files](https://github.com/syncfusion/wpf-controls-localization-resx-files) to the libraries you are using to the `Resources` folder and ensure `AccessModifier` is specified as `Public`.
-N> Consider, you are using `SfDataGrid` and `Ribbon` in your application. Then, you need to copy and include `Syncfusion.SfGrid.WPF.resx` (since `SfDataGrid` present in `Syncfusion.SfGrid.WPF` library) and `Syncfusion.Tools.Wpf.resx` (since `Ribbon` present in `Syncfusion.Tools.WPF` library) files in your application under `Resources` folder. So, now you can know the key names and values of default stings used in `Syncfusion.Tools.WPF.dll` and `Syncfusion.SfGrid.WPF.dll` libraries.
+N> Consider, you are using `SfDataGrid` and `Ribbon` in your application. Then, you need to copy and include `Syncfusion.SfGrid.WPF.resx` (since `SfDataGrid` present in `Syncfusion.SfGrid.WPF` library) and `Syncfusion.Tools.Wpf.resx` (since `Ribbon` present in `Syncfusion.Tools.WPF` library) files in your application under `Resources` folder. So, now you can know the key names and values of default strings used in `Syncfusion.Tools.WPF.dll` and `Syncfusion.SfGrid.WPF.dll` libraries.

@@ -75,4 +75,4 @@ N> Download demo from the [GitHub](https://github.com/SyncfusionExamples/wpf-dat
## Editing default culture strings
-You can change default string of any control by adding the default .resx files ([from GitHub](https://github.com/syncfusion/wpf-controls-localization-resx-files)) to `Resources` folder of your application. If it is added, Syncfusion® WPF controls reads the default string from the .resx files of application.
+You can change default strings of any control by adding the default .resx files ([from GitHub](https://github.com/syncfusion/wpf-controls-localization-resx-files)) to the `Resources` folder of your application. If added, Syncfusion® WPF controls read the default strings from the .resx files of the application.
diff --git a/wpf/Pattern-and-Practices.md b/wpf/Pattern-and-Practices.md
index 68a26baa0..a104cdd2e 100644
--- a/wpf/Pattern-and-Practices.md
+++ b/wpf/Pattern-and-Practices.md
@@ -1,7 +1,7 @@
---
layout: post
title: Pattern and Practices for Syncfusion Essential WPF controls
-description: Learn here about how to use MVVM Commands, Patterns, and Events of the Syncfusion Essential WPF controls
+description: Learn how to implement MVVM commands, patterns, and event handling techniques with Syncfusion Essential WPF controls.
platform: wpf
control: Pattern and Practices
documentation: ug
@@ -10,9 +10,10 @@ documentation: ug
## Getting Started with MVVM
-Essential® WPF controls are suitable for MVVM Pattern. Since, the controls are provided with built-in commands.
+Essential® WPF controls are suitable for the MVVM pattern, as the controls provide built-in commands and support data binding.
-The `DataContext` property specifies the default source for Data Binding in MVVM pattern.
+
+The `DataContext` property specifies the default source for data binding in the MVVM pattern.
{% tabs %}
@@ -39,17 +40,19 @@ public partial class MainWindow : Window
{% endtabs %}
-This section explains how to perform TabControlExt’s `selectionChanged` event by creating a ViewModel and defining a Model collection that is used to bind with the TabControl’s `ItemSource` property.
+
+This section explains how to handle the TabControlExt’s `SelectionChanged` event by creating a ViewModel and defining a Model collection that is used to bind with the TabControlExt’s `ItemsSource` property.
{% tabs %}
{% highlight XAML %}
-
+
+
-
+
@@ -62,59 +65,43 @@ This section explains how to perform TabControlExt’s `selectionChanged` event
{% highlight C# %}
-public class ViewModel:NotificationObject
+
+public class ViewModel : NotificationObject
{
- private ObservableCollection _tabcollection;
- public ObservableCollection tabcollection
+ private ObservableCollection _tabCollection;
+ public ObservableCollection TabCollection
{
- get
- {
- return _tabcollection;
- }
- set
- {
- _tabcollection = value;
- }
+ get { return _tabCollection; }
+ set { _tabCollection = value; }
}
- private void Collection()
+
+ private void PopulateCollection()
{
- model model = new model()
- {
- HeaderName = "item1"
- };
- model model1 = new model()
- {
- HeaderName = "item2"
- };
- model model2 = new model()
- {
- HeaderName = "item3"
- };
- tabcollection.Add(model);
- tabcollection.Add(model1);
- tabcollection.Add(model2);
+ var model1 = new Model { HeaderName = "item1" };
+ var model2 = new Model { HeaderName = "item2" };
+ var model3 = new Model { HeaderName = "item3" };
+ TabCollection.Add(model1);
+ TabCollection.Add(model2);
+ TabCollection.Add(model3);
}
+
public ViewModel()
{
- tabcollection=new ObservableCollection();
- Collection();
+ TabCollection = new ObservableCollection();
+ PopulateCollection();
}
}
-public class model:NotificationObject
+public class Model : NotificationObject
{
- public model() {}
- private string _headername;
+ private string _headerName;
public string HeaderName
{
- get
- {
- return _headername;
- }
+ get { return _headerName; }
set
{
- _headername = value;
- this.RaisePropertyChanged("HeaderName");
+ _headerName = value;
+ this.RaisePropertyChanged(nameof(HeaderName));
}
}
}
@@ -123,43 +110,45 @@ public class model:NotificationObject
{% highlight VB %}
+
+' VB.NET
Public Class ViewModel
Inherits NotificationObject
- Private _tabcollection As ObservableCollection(Of model)
- Public Property tabcollection() As ObservableCollection(Of model)
+ Private _tabCollection As ObservableCollection(Of Model)
+ Public Property TabCollection() As ObservableCollection(Of Model)
Get
- Return _tabcollection
+ Return _tabCollection
End Get
- Set(ByVal value As ObservableCollection(Of model))
- _tabcollection = value
+ Set(ByVal value As ObservableCollection(Of Model))
+ _tabCollection = value
End Set
End Property
- Private Sub Collection()
- Dim model As New model() With {.HeaderName = "item1"}
- Dim model1 As New model() With {.HeaderName = "item2"}
- Dim model2 As New model() With {.HeaderName = "item3"}
- tabcollection.Add(model)
- tabcollection.Add(model1)
- tabcollection.Add(model2)
+
+ Private Sub PopulateCollection()
+ Dim model1 As New Model() With {.HeaderName = "item1"}
+ Dim model2 As New Model() With {.HeaderName = "item2"}
+ Dim model3 As New Model() With {.HeaderName = "item3"}
+ TabCollection.Add(model1)
+ TabCollection.Add(model2)
+ TabCollection.Add(model3)
End Sub
+
Public Sub New()
- tabcollection = New ObservableCollection(Of model)()
- Collection()
+ TabCollection = New ObservableCollection(Of Model)()
+ PopulateCollection()
End Sub
End Class
-Public Class model
+Public Class Model
Inherits NotificationObject
- Public Sub New()
- End Sub
- Private _headername As String
+ Private _headerName As String
Public Property HeaderName() As String
Get
- Return _headername
+ Return _headerName
End Get
Set(ByVal value As String)
- _headername = value
- Me.RaisePropertyChanged("HeaderName")
+ _headerName = value
+ Me.RaisePropertyChanged(NameOf(HeaderName))
End Set
End Property
End Class
@@ -168,18 +157,20 @@ End Class
{% endtabs %}
-To handle the `SelectionChanged` event of the TabControlExt in ViewModel, use `TabControlExtSelectionChangedCommand` and define a SelectionChanged command using `ICommand`.
-The `TabControlExtSelectionChangedCommand` command is available in `Syncfusion.Tools.MVVM.WPF` assembly. It also requires `Syncfusion.Shared.MVVM.WPF` as a dependency assembly.
+
+To handle the `SelectionChanged` event of the TabControlExt in the ViewModel, use the `TabControlExtSelectionChangedCommand` and define a `SelectionChanged` command using `ICommand`.
+The `TabControlExtSelectionChangedCommand` is available in the `Syncfusion.Tools.MVVM.WPF` assembly. It also requires `Syncfusion.Shared.MVVM.WPF` as a dependency assembly.
{% tabs %}
{% highlight XAML %}
-
+
+
-
+
@@ -193,19 +184,19 @@ The `TabControlExtSelectionChangedCommand` command is available in `Syncfusion.T
{% highlight C# %}
-private ICommand selectionchanged;
+
+private ICommand selectionChanged;
public ICommand SelectionChanged
{
- get
- {
- return selectionchanged;
- }
+ get { return selectionChanged; }
}
+
public ViewModel()
{
- selectionchanged = new DelegateCommand
-## Apply a theme to a control
+## Apply a Theme to a Control
### Add SkinManager reference
@@ -151,14 +151,14 @@ There are several ways to include the Syncfusion® [SfSkinManager]
### Add a theme assembly reference
-The [SfSkinManager](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html) supports to apply themes listed in [themes list](https://help.syncfusion.com/wpf/themes/skin-manager#themes-list). To use a theme in the application, add Reference to the corresponding theme assembly. For example, to apply `Windows11Light` theme, attach `Syncfusion.Themes.Windows11Light.Wpf` assembly or [NuGet](https://www.nuget.org/packages/Syncfusion.Themes.Windows11Light.WPF/) reference to the project. While applying a theme to a Window, SkinManager inherits the same theme to all the elements inside the Window.
+The [SfSkinManager](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html) supports applying themes listed in [themes list](https://help.syncfusion.com/wpf/themes/skin-manager#themes-list). To use a theme in the application, add Reference to the corresponding theme assembly. For example, to apply `Windows11Light` theme, attach `Syncfusion.Themes.Windows11Light.Wpf` assembly or [NuGet](https://www.nuget.org/packages/Syncfusion.Themes.Windows11Light.WPF/) reference to the project. While applying a theme to a Window, SkinManager inherits the same theme to all the elements inside the Window.

### Set theme
-Themes will be applied to both Syncfusion® and Framework controls by using [Theme](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html#Syncfusion_SfSkinManager_SfSkinManager_ThemeProperty) attached property of the [SfSkinManager](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html). Also Ensure that the `ApplyThemeAsDefaultStyle` property is set to `true` before calling the SetTheme method
+Themes will be applied to both Syncfusion® and Framework controls by using [Theme](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html#Syncfusion_SfSkinManager_SfSkinManager_ThemeProperty) attached property of the [SfSkinManager](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html). Also ensure that the `ApplyThemeAsDefaultStyle` property is set to `true` before calling the SetTheme method.
N> While applying the theme to a Window or any element, `SkinManager` inherits the same theme to all its descendants.
@@ -207,15 +207,15 @@ SfSkinManager.SetTheme(this, new Theme("Windows11Light"));
N> [View sample in GitHub](https://github.com/SyncfusionExamples/wpf-themes-demo-using-skinmanager).
-## Apply a theme globally in the application
+## Apply a Theme Globally in the Application
To apply a theme globally in an application, set the theme using `ApplicationTheme` attached property of the SfSkinManager in the constructor of your MainWindow. This ensures that the selected theme is automatically applied to any new windows when they are loaded.
If you set the theme using the `ApplicationTheme` attached property of [SfSkinManager](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html), you don’t need to set it again using the [Theme](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html#Syncfusion_SfSkinManager_SfSkinManager_ThemeProperty) attached property in xaml or by using [SetTheme](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html#Syncfusion_SfSkinManager_SfSkinManager_SetTheme_System_Windows_DependencyObject_Syncfusion_SfSkinManager_Theme_) in code behind.
-Also ensure that the `ApplyThemeAsDefaultStyle` property is set to `true`
+Also ensure that the `ApplyThemeAsDefaultStyle` property is set to `true`.
-N> The `SfSkinManager.ApplicationTheme` static property should be set before `InitializeComponent` of the window or during application start up, when applying for multiple windows.
+N> The `SfSkinManager.ApplicationTheme` static property should be set before `InitializeComponent` of the window or during application startup, when applying for multiple windows.
{% tabs %}
@@ -239,13 +239,13 @@ public partial class MainWindow : Window
## Customization
-### Customize theme colors and fonts in the application
+### Customize Theme Colors and Fonts in the Application
To customize the theme colors and fonts in the application, call [RegisterThemeSettings](https://help.syncfusion.com/cr/wpf/Syncfusion.SfSkinManager.SfSkinManager.html#Syncfusion_SfSkinManager_SfSkinManager_RegisterThemeSettings_System_String_Syncfusion_SfSkinManager_IThemeSetting_) method and pass the theme name and respective theme setting instance as parameters.
-Each theme supported by the theme studio has its own theme settings class, which begins with the prefix of the themes' name. For example, if the theme name is `Windows11Light`, then there will be theme settings class called `Windows11LightThemeSettings`.
+Each theme supported by the theme studio has its own theme settings class, which begins with the theme name as a prefix. For example, if the theme name is `Windows11Light`, then there will be theme settings class called `Windows11LightThemeSettings`.
-N> Need to register theme settings before setting respective themes for window or control.
+N> You need to register theme settings before setting respective themes for window or control.
Please find the complete list of theme names, respective theme settings class, and supported palette.
@@ -509,6 +509,7 @@ This applies the WPFPrimaryButtonStyle to the button, overriding its default sty
You can retrieve the styles for specific controls from the [Resource Key list](https://help.syncfusion.com/wpf/themes/skin-manager#resource-key-list) according to your requirements.
+
In the example below, a ComboBox is used to toggle between the Windows11Light and Windows11Dark themes. Two buttons are displayed: one applies a different style (WPFPrimaryButtonStyle), while the other uses a different background brush (ErrorBackground).
{% tabs %}
@@ -575,7 +576,7 @@ The control style is resolved automatically from the active theme.

-#### Apply StyleVariant with custom style
+#### Apply StyleVariant with Custom Style
You can also combine StyleVariant with a custom Style to override or extend properties.
@@ -620,7 +621,7 @@ SfSkinManager.SetTheme(this, new Theme("Windows11Dark"));

-### Accessing Theme Resources Using TryFindResource
+### Accessing Theme Resources Using TryFindResource
To access specific theme resources in your WPF application, you can use the `TryFindResource(key)` method to retrieve a resource by its key and apply it in the code-behind.
@@ -683,7 +684,7 @@ if (currentTheme.ThemeName == "Windows11Light")
{% endtabs %}
-This example demonstrates how to dynamically apply a button style, foreground color, and font size using theme resource keys defined in the Brushes.xaml and Common.xaml files for the Windows11Light theme.
+This example demonstrates how to dynamically apply a button style, foreground color, and font size using theme resource keys defined in the Brushes.xaml and Common.xaml files for the Windows11Light theme.
**Output Screenshot**
@@ -744,7 +745,7 @@ This example demonstrates how to dynamically apply a button style, foreground co
Control Name
Key Name
AutoComplete
SyncfusionAutoCompleteStyle
-
AssistView
SyncfusionChatStyle
+
AssistView
SyncfusionAssistViewStyle
AvatarView
SyncfusionAvatarViewStyle
BusyIndicator
SyncfusionBusyIndicatorStyle
ButtonAdv
SyncfusionButtonAdvStyle
@@ -849,9 +850,9 @@ This example demonstrates how to dynamically apply a button style, foreground co
WizardControl
SyncfusionWizardControlStyle
-## Apply themes to the controls derived from Syncfusion® controls
+## Apply Themes to the Controls Derived from Syncfusion® Controls
-To apply themes to a derived control using `SfSkinManager`, assign the base control type to the DefaultStyleKey property in the constructor of your derived control.Also ensure that the `ApplyThemeAsDefaultStyle` property is set to `true` in the MainWindow Constructor.
+To apply themes to a derived control using `SfSkinManager`, assign the base control type to the DefaultStyleKey property in the constructor of your derived control. Also ensure that the `ApplyThemeAsDefaultStyle` property is set to `true` in the MainWindow constructor.
{% tabs %}
@@ -900,9 +901,9 @@ public class SfDataGridExt : SfDataGrid
{% endtabs %}
-### Apply customized theme from Theme Studio
+### Apply Customized Theme from Theme Studio
-Create custom themes by [modifying the existing themes from Theme studio](https://help.syncfusion.com/wpf/themes/theme-studio#creating-custom-theme). To apply a custom theme in the application by using the following reference.
+Create custom themes by [modifying the existing themes from Theme Studio](https://help.syncfusion.com/wpf/themes/theme-studio#creating-custom-theme). To apply a custom theme in the application, use the following reference.
{% tabs %}
@@ -922,7 +923,7 @@ SfSkinManager.SetTheme(this, new Theme("Windows11LightYellow"));
{% endtabs %}
-### Apply custom style to active theme
+### Apply Custom Style to Active Theme
You can customize the theme by setting the `ApplyThemeAsDefaultStyle` property to `true`, which applies the theme based on each control’s default style.
@@ -936,7 +937,7 @@ SfSkinManager.ApplyThemeAsDefaultStyle = true;
{% endtabs %}
-N>The `SfSkinManager.ApplyThemeAsDefaultStyle` static property should be set before `InitializeComponent` of the window or during application start up.
+N>The `SfSkinManager.ApplyThemeAsDefaultStyle` static property should be set before `InitializeComponent` of the window or during application startup.
Enabling this setting allows you to override default theme styles. Follow the steps below to implement this behavior:
@@ -991,9 +992,9 @@ public partial class MainWindow : Window

-You can also change a theme dynamically with custom styles.
+You can also change a theme dynamically with custom styles.
-In the following example, a ComboBox is used to toggle between the Windows11Light and Windows11Dark themes. Here we customize the foreground color of the Button to red.
+In the following example, a ComboBox is used to toggle between the Windows11Light and Windows11Dark themes. The foreground color of the Button is customized to red.
{% tabs %}
diff --git a/wpf/Themes/Theme-Studio.md b/wpf/Themes/Theme-Studio.md
index bb194adbc..99bd5bfaa 100644
--- a/wpf/Themes/Theme-Studio.md
+++ b/wpf/Themes/Theme-Studio.md
@@ -92,9 +92,9 @@ The WPF Theme Studio comes with various sets of palettes for each theme variant.
Cyan
CyanBlue
Blue
-
BlueMegenta
-
Megenta
-
MegentaPink
+
BlueMagenta
+
Magenta
+
MagentaPink
diff --git a/wpf/right-to-left.md b/wpf/right-to-left.md
index 2b96e0f6c..22cea1f8a 100644
--- a/wpf/right-to-left.md
+++ b/wpf/right-to-left.md
@@ -1,7 +1,7 @@
---
layout: post
title: Right-to-Left support in Syncfusion WPF UI Controls | Syncfusion
-description: Learn about Right-to-Left (RTL) support in Syncfusion WPF UI Controls and more details. All Syncfusion controls supports Right to Left.
+description: Learn about Right-to-Left (RTL) support in Syncfusion WPF UI Controls and more. All Syncfusion controls support Right-to-Left.
platform: wpf
control: RightToLeft
documentation: ug
@@ -9,6 +9,78 @@ documentation: ug
# Right-to-Left support in Syncfusion® WPF Controls
-Right-to-Left(RTL) support displays the content from right-to-left direction by setting the [FlowDirection](https://docs.microsoft.com/en-us/dotnet/api/system.windows.flowdirection) property to `RightToLeft`. This is helpful to support the Right-to-Left scripted languages like Arabic, Hebrew, Urdu, etc.
-All WPF Syncfusion® controls support Right-to-Left (RTL) based on `FlowDirection` property. In addition to that, all controls provide [localization](https://help.syncfusion.com/wpf/localization) support to change language of strings used in control specific to any culture.
\ No newline at end of file
+Right-to-Left (RTL) support displays the content from right-to-left direction by setting the [FlowDirection](https://docs.microsoft.com/en-us/dotnet/api/system.windows.flowdirection) property to `RightToLeft`. This is helpful to support the Right-to-Left scripted languages like Arabic, Hebrew, Urdu, etc.
+
+All WPF Syncfusion® controls support Right-to-Left (RTL) based on the `FlowDirection` property. In addition to that, most controls provide [localization](Localization.md) support to change the language of strings used in the control for any specific culture.
+
+## Prerequisites
+
+* A Syncfusion WPF application project must be available with at least one Syncfusion control hosted on a window or page.
+* For supported .NET Framework / .NET versions and Visual Studio versions, see [System Requirements](System-Requirements.md).
+* RTL support relies on the WPF `FlowDirection` property and works on any control that inherits from `FrameworkElement`.
+
+## FlowDirection enum values
+
+The `FlowDirection` property accepts the following values from the `System.Windows.FlowDirection` enumeration:
+
+* `LeftToRight` – Default value. Content flows from left to right.
+* `RightToLeft` – Content flows from right to left; used for RTL languages.
+* `Inherit` – Inherits the `FlowDirection` value from the parent element in the visual tree.
+
+## Enabling Right-to-Left
+
+RTL can be enabled at the application/window level (so all child controls inherit it) or at the individual control level.
+
+### Enable RTL at the window level (XAML)
+
+Set `FlowDirection` on the `Window` (or `Page`) so that all contained Syncfusion controls inherit the RTL layout:
+
+```xml
+
+
+
+
+
+```
+
+### Enable RTL on a single control (XAML)
+
+To scope RTL to a specific Syncfusion control, set `FlowDirection` directly on that control:
+
+```xml
+
+```
+
+### Enable RTL in code-behind (C#)
+
+```csharp
+using System.Windows;
+
+// Set RTL on the window so all child controls inherit it.
+this.FlowDirection = FlowDirection.RightToLeft;
+
+// Or set RTL on a specific control.
+buttonAdv.FlowDirection = FlowDirection.RightToLeft;
+```
+
+## Version compatibility
+
+RTL support through `FlowDirection` is available in all Syncfusion WPF control releases that target .NET Framework 4.0+ and .NET (Core) 3.1+, since it is inherited from the WPF framework. Refer to the [Syncfusion WPF release notes](Release-notes/) for version-specific behavior.
+
+## Supported controls and limitations
+
+* All Syncfusion WPF controls that derive from `FrameworkElement` honor `FlowDirection="RightToLeft"`.
+* Complex composite controls (for example, data grids, schedulers, and diagrams) mirror their layout; however, some nested graphical elements may not fully mirror and should be visually verified after enabling RTL.
+* RTL affects layout direction only; to translate display strings, combine RTL with [localization](Localization.md).
+
+## See also
+
+* [Localization](Localization.md)
+* [System Requirements](System-Requirements.md)
\ No newline at end of file
diff --git a/wpf/samples.md b/wpf/samples.md
index 50e279b37..def504b59 100644
--- a/wpf/samples.md
+++ b/wpf/samples.md
@@ -7,54 +7,84 @@ control: Featured Samples
documentation: ug
---
+
# Featured Samples for Syncfusion® WPF Controls
+## Prerequisites
+
+* **Essential Studio® for WPF** must be installed. See the [Installation](Installation/) topic for setup steps.
+* To open sample source from the Sample Browser, a supported edition of **Visual Studio** must be installed. See [System Requirements](System-Requirements.md) for supported versions.
+* Running samples requires a **Syncfusion runtime license key**. See [Licensing](Licensing/) for details on registering a license key.
+* The offline and online samples target either **.NET Framework** or **.NET** (formerly .NET Core). Refer to the [Syncfusion WPF release notes](Release-notes/) for the specific framework versions supported by each sample set.
+
## Syncfusion® WPF Controls Panel
-To explore Syncfusion® WPF controls and components, Open `Syncfusion® WPF Controls Panel` by searching it from start and open.
+To explore Syncfusion® WPF controls and components, open the **Syncfusion WPF Controls Panel** by typing "Syncfusion WPF" in the Windows Start menu search and clicking the matching result.

-In another way, open the Control Panel from the following installed location.
+Alternatively, open the Control Panel from the following installed location:
+```
C:\Program Files (x86)\Syncfusion\Essential Studio\WPF\{{ site.releaseversion }}\Infrastructure\Launcher\Syncfusion WPF Control Panel.exe
+```
-N> In above section, latest Essential Studio® version details has been provided. You can refer installed Essential Studio® version instead of mentioned version.
+N> The path above uses the latest Essential Studio® version. Refer to the installed Essential Studio® version instead of the one mentioned.

## WPF Sample Browser
-To explore the locally installed demos, click `Run Local Demos` and select either `.NET Core` or `.NET FrameWork`, which will open `WPF Sample Browser`.
+To explore the locally installed demos, click `Run Local Demos` and select either **.NET** or **.NET Framework**, which will open the `WPF Sample Browser`.

## Offline Samples
-The Offline samples are available in the following installed location where you can make changes and further exploration of controls.
+The offline samples are available at the following installed location, where you can make changes and further explore the controls:
+```
C:\Users\Public\Documents\Syncfusion\WPF\{{ site.releaseversion }}\
+```
-The offline samples can also be explored directly from the `Syncfusion® WPF Sample Browser` and opened in Visual Studio by running the required sample and selecting the `Open source code in visual studio`.
+The offline samples can also be explored directly from the `Syncfusion® WPF Sample Browser` and opened in Visual Studio by running the required sample and selecting `Open source code in Visual Studio`.

+N> If a sample fails to load, ensure the file is unblocked (right-click the file > **Properties** > check **Unblock**) and that the target .NET Framework / .NET SDK and Visual Studio version are installed.
+
### Offline showcase samples
-To explore any individual showcase sample from the `Syncfusion® WPF Sample Browser`, Click `Explore Demo Source` and navigate to `showcase` folder.
+To explore any individual showcase sample from the `Syncfusion® WPF Sample Browser`, click `Explore Demo Source` and navigate to the `showcase` folder.

-N> To run the individual control demos, please refer the instruction from [Running Individual Control Demos](https://github.com/syncfusion/wpf-demos#running-individual-control-demos).
+N> To run the individual control demos, refer to the instructions in [Running Individual Control Demos](https://github.com/syncfusion/wpf-demos#running-individual-control-demos).
## Online Samples
-* Download and install `.Net Framework` demos from [Microsoft Store](https://apps.microsoft.com/detail/9n99kdhrff6g?hl=en-US&gl=US).
+Online samples let you explore Syncfusion® WPF controls without installing the full WPF Studio. Samples are available from the **Microsoft Store** (installed demo browser) and from the **GitHub repository** (clone and build).
-## Download demos from online (Clone from github repository)
+### Microsoft Store demo browser
-You can explore Syncfusion® WPF controls using [GitHub WPF demos](https://github.com/syncfusion/wpf-demos), where all wpf demos are configured using `NuGet` to run without installing Syncfusion® WPF Studio.
+* Download and install the **.NET Framework** demos from the [Microsoft Store](https://apps.microsoft.com/detail/9n99kdhrff6g?hl=en-US&gl=US).
+* After installation completes, launch the installed **Syncfusion WPF Sample Browser** app from the Windows Start menu.
### Download showcase demos from online
-You can explore showcase demos from [GitHub WPF demos](https://github.com/syncfusion/wpf-demos/tree/master/showcase).
+See the repository's `README` for the required .NET SDK / Visual Studio version.
+
+1. Clone the repository:
+
+```
+git clone https://github.com/syncfusion/wpf-demos.git
+```
+
+2. Open the solution in Visual Studio.
+3. Restore NuGet packages (the public nuget.org feed is sufficient).
+4. Build and run the desired sample project.
+5. Register a Syncfusion runtime license key if prompted — see [Licensing](Licensing/).
+
+### Online showcase samples
+
+You can explore the showcase demos from the [GitHub WPF demos showcase folder](https://github.com/syncfusion/wpf-demos/tree/master/showcase).