diff --git a/snippets/csharp/System.Linq/Enumerable/AggregateBy/Enumerable.csproj b/snippets/csharp/System.Linq/Enumerable/AggregateBy/Enumerable.csproj new file mode 100644 index 00000000000..92e46ddaccf --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/AggregateBy/Enumerable.csproj @@ -0,0 +1,8 @@ + + + + Exe + net9.0 + + + diff --git a/snippets/csharp/System.Linq/Enumerable/AggregateBy/enumerable.cs b/snippets/csharp/System.Linq/Enumerable/AggregateBy/enumerable.cs new file mode 100644 index 00000000000..e7786d26d6b --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/AggregateBy/enumerable.cs @@ -0,0 +1,92 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace SequenceExamples +{ + class Program + { + // This part is just for testing the examples + static void Main(string[] args) + { + AggregateBy.AggregateBySeedExample(); + } + + #region AggregateBy + static class AggregateBy + { + + public static void AggregateBySeedSelectorExample() + { + // + (string Name, string Department, decimal Salary)[] employees = + { + ("Ali", "HR", 45000), + ("Samer", "Technology", 50000), + ("Hamed", "Sales", 75000), + ("Lina", "Technology", 65000), + ("Omar", "HR", 40000) + }; + + var result = + employees.AggregateBy( + e => e.Department, + dept => (Total: 0m, Count: 0), + (acc, e) => (acc.Total + e.Salary, acc.Count + 1) + ); + + foreach (var item in result) + { + Console.WriteLine($"{item.Key}: Total={item.Value.Total}, Count={item.Value.Count}"); + } + + /* + This code produces the following output: + + HR: Total=85000, Count=2 + Technology: Total=115000, Count=2 + Sales: Total=75000, Count=1 + */ + // + } + + + + public static void AggregateBySeedExample() + { + // + (string Name, string Department, decimal Salary)[] employees = + { + ("Ali", "HR", 45000), + ("Samer", "Technology", 50000), + ("Hamed", "Sales", 75000), + ("Lina", "Technology", 65000), + ("Omar", "HR", 40000) + }; + + var totals = + employees.AggregateBy( + e => e.Department, + 0m, + (total, e) => total + e.Salary + ); + + foreach (var item in totals) + { + Console.WriteLine($"{item.Key}: {item.Value}"); + } + + /* + This code produces the following output: + + HR: 85000 + Technology: 115000 + Sales: 75000 + */ + // + } + + } + #endregion + } +} diff --git a/snippets/csharp/System.Linq/Enumerable/AggregateTSource/enumerable.cs b/snippets/csharp/System.Linq/Enumerable/AggregateTSource/enumerable.cs index b1acf2a1430..6c627c29b94 100644 --- a/snippets/csharp/System.Linq/Enumerable/AggregateTSource/enumerable.cs +++ b/snippets/csharp/System.Linq/Enumerable/AggregateTSource/enumerable.cs @@ -3205,157 +3205,5 @@ static void TakeLast() } #endregion - #region AggregateBy - static class AggregateBy - { - // - public static void AggregateBySeedSelectorExample() - { - (string Name, string Department, decimal Salary)[] employees = - { - ("Ali", "HR", 45000), - ("Samer", "Technology", 50000), - ("Hamed", "Sales", 75000), - ("Lina", "Technology", 65000), - ("Omar", "HR", 40000) - }; - - var result = - employees.AggregateBy( - e => e.Department, - dept => (Total: 0m, Count: 0), - (acc, e) => (acc.Total + e.Salary, acc.Count + 1) - ); - - foreach (var item in result) - { - Console.WriteLine($"{item.Key}: Total={item.Value.Total}, Count={item.Value.Count}"); - } - - /* - This code produces the following output: - - HR: Total=85000, Count=2 - Technology: Total=115000, Count=2 - Sales: Total=75000, Count=1 - */ - } - // - - // - public static void AggregateBySeedExample() - { - (string Name, string Department, decimal Salary)[] employees = - { - ("Ali", "HR", 45000), - ("Samer", "Technology", 50000), - ("Hamed", "Sales", 75000), - ("Lina", "Technology", 65000), - ("Omar", "HR", 40000) - }; - - var totals = - employees.AggregateBy( - e => e.Department, - 0m, - (total, e) => total + e.Salary - ); - - foreach (var item in totals) - { - Console.WriteLine($"{item.Key}: {item.Value}"); - } - - /* - This code produces the following output: - - HR: 85000 - Technology: 115000 - Sales: 75000 - */ - } - // - } - #endregion - - #region UnionBy - static class UnionBy - { - // - public static void UnionByKeySelectorExample() - { - (int ProductId, string Name , decimal Price)[] localProducts = - { - (101, "Laptop", 1000m), - (102, "Mouse", 100m), - (103, "Keyboard", 120m) - }; - - (int ProductId, string Name, decimal Price)[] warehouseProducts = - { - (102, "Mouse", 100m), // Duplicate ProductId (already in local) - (104, "Monitor", 800m), - (101, "Laptop", 1000m) // Duplicate ProductId (already in local) - }; - var combinedProducts = - localProducts.UnionBy( - warehouseProducts, - product => product.ProductId - ); - - foreach (var product in combinedProducts) - { - Console.WriteLine($"{product.ProductId}: {product.Name} - ${product.Price}"); - } - - /* - This code produces the following output: - - 101: Laptop - $1000 - 102: Mouse - $100 - 103: Keyboard - $120 - 104: Monitor - $800 - */ - } - // - - // - public static void UnionByComparerExample() - { - (string Email, string FullName)[] marketingList = - { - ("Mahmoud.Doe@example.com", "Mahmoud Doe"), - ("alice.smith@example.com", "Alice Smith") - }; - - (string Email, string FullName)[] salesList = - { - ("ALICE.SMITH@EXAMPLE.COM", "Alice S."), // Duplicate email, different casing - ("Sara.jones@example.com", "Sara Jones") - }; - - var combinedList = - marketingList.UnionBy( - salesList, - contact => contact.Email, - StringComparer.OrdinalIgnoreCase - ); - - foreach (var contact in combinedList) - { - Console.WriteLine($"{contact.FullName} ({contact.Email})"); - } - - /* - This code produces the following output: - - Mahmoud Doe (Mahmoud.Doe@example.com) - Alice Smith (alice.smith@example.com) - Sara Jones (Sara.jones@example.com) - */ - } - // - } - #endregion } } diff --git a/snippets/csharp/System.Linq/Enumerable/CountBy/Enumerable.csproj b/snippets/csharp/System.Linq/Enumerable/CountBy/Enumerable.csproj new file mode 100644 index 00000000000..92e46ddaccf --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/CountBy/Enumerable.csproj @@ -0,0 +1,8 @@ + + + + Exe + net9.0 + + + diff --git a/snippets/csharp/System.Linq/Enumerable/CountBy/enumerable.cs b/snippets/csharp/System.Linq/Enumerable/CountBy/enumerable.cs new file mode 100644 index 00000000000..a31df74663d --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/CountBy/enumerable.cs @@ -0,0 +1,54 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace SequenceExamples +{ + class Program + { + // This part is just for testing the examples + static void Main(string[] args) + { + CountBy.CountByDepartmentExample(); + } + + #region CountBy + static class CountBy + { + + public static void CountByDepartmentExample() + { + // + (string Name, int Age, string Department)[] employees = + { + ("Saly", 23, "IT"), + ("David", 25, "Sales"), + ("Mahmoud", 22, "IT"), + ("Qamar", 22, "HR"), + ("Sara", 25, "IT"), + ("John", 26, "HR"), + ("Jaffar", 32, "Sales") + }; + + // Count the number of employees per department + var countPerDepartment = employees.CountBy(employee => employee.Department); + + foreach (var item in countPerDepartment) + { + Console.WriteLine($"Department: {item.Key} - Employees Count: {item.Value}"); + } + + /* + This code produces the following output: + + Department: IT - Employees Count: 3 + Department: Sales - Employees Count: 2 + Department: HR - Employees Count: 2 + */ + // + } + + } + #endregion + } +} diff --git a/snippets/csharp/System.Linq/Enumerable/UnionBy/Enumerable.csproj b/snippets/csharp/System.Linq/Enumerable/UnionBy/Enumerable.csproj new file mode 100644 index 00000000000..92e46ddaccf --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/UnionBy/Enumerable.csproj @@ -0,0 +1,8 @@ + + + + Exe + net9.0 + + + diff --git a/snippets/csharp/System.Linq/Enumerable/UnionBy/enumerable.cs b/snippets/csharp/System.Linq/Enumerable/UnionBy/enumerable.cs new file mode 100644 index 00000000000..00c2bca8da6 --- /dev/null +++ b/snippets/csharp/System.Linq/Enumerable/UnionBy/enumerable.cs @@ -0,0 +1,99 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace SequenceExamples +{ + class Program + { + // This part is just for testing the examples + static void Main(string[] args) + { + UnionBy.UnionByKeySelectorExample(); + } + + #region UnionBy + static class UnionBy + { + + public static void UnionByKeySelectorExample() + { + // + (int ProductId, string Name, decimal Price)[] localProducts = + { + (101, "Laptop", 1000m), + (102, "Mouse", 100m), + (103, "Keyboard", 120m) + }; + + (int ProductId, string Name, decimal Price)[] warehouseProducts = + { + (102, "Mouse", 100m), // Duplicate ProductId (already in local) + (104, "Monitor", 800m), + (101, "Laptop", 1000m) // Duplicate ProductId (already in local) + }; + var combinedProducts = + localProducts.UnionBy( + warehouseProducts, + product => product.ProductId + ); + + foreach (var product in combinedProducts) + { + Console.WriteLine($"{product.ProductId}: {product.Name} - ${product.Price}"); + } + + /* + This code produces the following output: + + 101: Laptop - $1000 + 102: Mouse - $100 + 103: Keyboard - $120 + 104: Monitor - $800 + */ + // + } + + + + public static void UnionByComparerExample() + { + // + (string Email, string FullName)[] marketingList = + { + ("Mahmoud.Doe@example.com", "Mahmoud Doe"), + ("alice.smith@example.com", "Alice Smith") + }; + + (string Email, string FullName)[] salesList = + { + ("ALICE.SMITH@EXAMPLE.COM", "Alice S."), // Duplicate email, different casing + ("Sara.jones@example.com", "Sara Jones") + }; + + var combinedList = + marketingList.UnionBy( + salesList, + contact => contact.Email, + StringComparer.OrdinalIgnoreCase + ); + + foreach (var contact in combinedList) + { + Console.WriteLine($"{contact.FullName} ({contact.Email})"); + } + + /* + This code produces the following output: + + Mahmoud Doe (Mahmoud.Doe@example.com) + Alice Smith (alice.smith@example.com) + Sara Jones (Sara.jones@example.com) + */ + // + } + + } + #endregion + } +} diff --git a/xml/System.Collections.Specialized/NotifyCollectionChangedAction.xml b/xml/System.Collections.Specialized/NotifyCollectionChangedAction.xml index 6adf87725b3..9f5ecd78e75 100644 --- a/xml/System.Collections.Specialized/NotifyCollectionChangedAction.xml +++ b/xml/System.Collections.Specialized/NotifyCollectionChangedAction.xml @@ -72,7 +72,6 @@ To be added. - ObservableCollection Simply Explained diff --git a/xml/System.Linq/Enumerable.xml b/xml/System.Linq/Enumerable.xml index 2c264c81e38..4c4e8ea1026 100644 --- a/xml/System.Linq/Enumerable.xml +++ b/xml/System.Linq/Enumerable.xml @@ -422,7 +422,7 @@ This method is comparable to the @@ -511,7 +511,7 @@ This method is comparable to the @@ -3004,7 +3004,17 @@ Each chunk except the last one will be of size `size`. The last chunk will conta An to compare keys with. Returns the count of elements in the source sequence grouped by key. An enumerable containing the frequencies of each key occurrence in . - To be added. + + + @@ -17928,7 +17938,7 @@ When the object returned by this method is enumerated, @@ -18018,7 +18028,7 @@ When the object returned by this method is enumerated, diff --git a/xml/System.Threading/AutoResetEvent.xml b/xml/System.Threading/AutoResetEvent.xml index 48810ccf590..3cc92d7df64 100644 --- a/xml/System.Threading/AutoResetEvent.xml +++ b/xml/System.Threading/AutoResetEvent.xml @@ -65,7 +65,7 @@ ## Remarks -You use `AutoResetEvent`, , and for thread interaction (or thread signaling). For more information, see [Thread interaction](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives#thread-interaction-or-signaling). +You use `AutoResetEvent`, , and for thread interaction (or thread signaling). For more information, see [Thread interaction](/dotnet/standard/threading/overview-of-synchronization-primitives#thread-interaction-or-signaling). A thread waits for a signal by calling [AutoResetEvent.WaitOne](xref:System.Threading.WaitHandle.WaitOne%2A). If the `AutoResetEvent` is in the non-signaled state, the thread blocks until [AutoResetEvent.Set](xref:System.Threading.EventWaitHandle.Set%2A) is called. Calling `Set` signals `AutoResetEvent` to release a waiting thread. `AutoResetEvent` remains signaled until `Reset` is called or a single waiting thread is released, at which time it automatically returns to the non-signaled state. @@ -100,7 +100,7 @@ After the threads are released from the first This class is thread safe. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -170,7 +170,7 @@ After the threads are released from the first Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives diff --git a/xml/System.Threading/EventWaitHandle.xml b/xml/System.Threading/EventWaitHandle.xml index 8e0a1ca5f48..3af2081c634 100644 --- a/xml/System.Threading/EventWaitHandle.xml +++ b/xml/System.Threading/EventWaitHandle.xml @@ -75,7 +75,7 @@ The class allows threads to communicate objects can be used with the `static`(`Shared` in Visual Basic) and methods. - For more information, see the [Thread interaction, or signaling](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives#thread-interaction-or-signaling) section of the [Overview of synchronization primitives](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives) article. + For more information, see the [Thread interaction, or signaling](/dotnet/standard/threading/overview-of-synchronization-primitives#thread-interaction-or-signaling) section of the [Overview of synchronization primitives](/dotnet/standard/threading/overview-of-synchronization-primitives) article. > [!CAUTION] > By default, a named event is not restricted to the user that created it. Other users might be able to open and use the event, including interfering with the event by setting or resetting it inappropriately. To restrict access to specific users, you can use a constructor overload or and pass in an when creating the named event. Avoid using named events without access restrictions on systems that might have untrusted users running code. @@ -95,7 +95,7 @@ The class allows threads to communicate Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -175,7 +175,7 @@ The class allows threads to communicate ]]> The enum value was out of legal range. - Overview of synchronization primitives + Overview of synchronization primitives @@ -266,7 +266,7 @@ There was some other error. The `HResult` property might provide more informatio -or- .NET Framework only: is longer than MAX_PATH (260 characters). - Overview of synchronization primitives + Overview of synchronization primitives @@ -356,7 +356,7 @@ There was some other error. The `HResult` property might provide more informatio -or- .NET Framework only: is longer than MAX_PATH (260 characters). - Overview of synchronization primitives + Overview of synchronization primitives @@ -425,7 +425,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. The enum value was out of legal range. - Overview of synchronization primitives + Overview of synchronization primitives @@ -522,7 +522,7 @@ There was some other error. The `HResult` property might provide more informatio -or- .NET Framework only: is longer than MAX_PATH (260 characters). - Overview of synchronization primitives + Overview of synchronization primitives @@ -591,7 +591,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. The enum value was out of legal range. - Overview of synchronization primitives + Overview of synchronization primitives @@ -655,7 +655,7 @@ An object with the specified exists, but the specified The current object represents a named system event, and was not opened with . The method was previously called on this . - Overview of synchronization primitives + Overview of synchronization primitives @@ -759,7 +759,7 @@ There was some other error. The `HResult` property might provide more informatio Windows only: specified an unknown namespace. See Object Names for more information. The is too long. Length restrictions might depend on the operating system or configuration. The named event exists, but the user does not have the security access required to use it. - Overview of synchronization primitives + Overview of synchronization primitives @@ -845,7 +845,7 @@ There was some other error. The `HResult` property might provide more informatio Windows only: specified an unknown namespace. See Object Names for more information. The is too long. Length restrictions might depend on the operating system or configuration. The named event exists, but the user does not have the desired security access. - Overview of synchronization primitives + Overview of synchronization primitives @@ -914,7 +914,7 @@ There was some other error. The `HResult` property might provide more informatio Windows only: specified an unknown namespace. See Object Names for more information. The is too long. Length restrictions might depend on the operating system or configuration. The named event exists, but the user does not have the security access required to use it. - Overview of synchronization primitives + Overview of synchronization primitives @@ -967,7 +967,7 @@ There was some other error. The `HResult` property might provide more informatio if the operation succeeds; otherwise, . To be added. The method was previously called on this . - Overview of synchronization primitives + Overview of synchronization primitives @@ -1040,7 +1040,7 @@ There was some other error. The `HResult` property might provide more informatio ]]> The method was previously called on this . - Overview of synchronization primitives + Overview of synchronization primitives @@ -1107,7 +1107,7 @@ There was some other error. The `HResult` property might provide more informatio The event was not opened with . The current object does not represent a named system event. The method was previously called on this . - Overview of synchronization primitives + Overview of synchronization primitives diff --git a/xml/System.Threading/Interlocked.xml b/xml/System.Threading/Interlocked.xml index d9338a3cc1c..4698d13f4d1 100644 --- a/xml/System.Threading/Interlocked.xml +++ b/xml/System.Threading/Interlocked.xml @@ -92,7 +92,7 @@ This type is thread safe. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -172,7 +172,7 @@ The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -244,7 +244,7 @@ Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -675,7 +675,7 @@ The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -794,7 +794,7 @@ The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -861,7 +861,7 @@ The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -935,7 +935,7 @@ The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -1014,7 +1014,7 @@ If `comparand` and the object in `location1` are equal by reference, then `value ]]> Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives The address of is a pointer. @@ -1137,7 +1137,7 @@ If `comparand` and the object in `location1` are equal by reference, then `value The address of is a null pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -1509,7 +1509,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives The address of is a pointer. @@ -1577,7 +1577,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives The address of is a pointer. @@ -1771,7 +1771,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` To be added. The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -1880,7 +1880,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives The address of is a pointer. @@ -1939,7 +1939,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` To be added. The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -2001,7 +2001,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` To be added. The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -2081,7 +2081,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives The address of is a pointer. @@ -2183,7 +2183,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` To be added. The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -2544,7 +2544,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` The address of is a pointer. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -2615,7 +2615,7 @@ If `comparand` and the value in `location1` are equal by reference, then `value` Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -3099,7 +3099,7 @@ This method wraps a call to [FlushProcessWriteBuffers](/windows/win32/api/proces Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives diff --git a/xml/System.Threading/LockCookie.xml b/xml/System.Threading/LockCookie.xml index d78027f2f11..f3d542191a8 100644 --- a/xml/System.Threading/LockCookie.xml +++ b/xml/System.Threading/LockCookie.xml @@ -84,7 +84,6 @@ This type is thread safe. Managed Threading - Reader-Writer Locks diff --git a/xml/System.Threading/ManualResetEvent.xml b/xml/System.Threading/ManualResetEvent.xml index 15da134bb08..ccb8a4ae766 100644 --- a/xml/System.Threading/ManualResetEvent.xml +++ b/xml/System.Threading/ManualResetEvent.xml @@ -65,7 +65,7 @@ ## Remarks - You use `ManualResetEvent`, , and for thread interaction (or thread signaling). For more information, see the [Thread interaction, or signaling](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives#thread-interaction-or-signaling) section of the [Overview of synchronization primitives](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives) article. + You use `ManualResetEvent`, , and for thread interaction (or thread signaling). For more information, see the [Thread interaction, or signaling](/dotnet/standard/threading/overview-of-synchronization-primitives#thread-interaction-or-signaling) section of the [Overview of synchronization primitives](/dotnet/standard/threading/overview-of-synchronization-primitives) article. When a thread begins an activity that must complete before other threads proceed, it calls [ManualResetEvent.Reset](xref:System.Threading.EventWaitHandle.Reset%2A) to put `ManualResetEvent` in the non-signaled state. This thread can be thought of as controlling the `ManualResetEvent`. Threads that call [ManualResetEvent.WaitOne](xref:System.Threading.WaitHandle.WaitOne%2A) block, awaiting the signal. When the controlling thread completes the activity, it calls [ManualResetEvent.Set](xref:System.Threading.EventWaitHandle.Set%2A) to signal that the waiting threads can proceed. All waiting threads are released. @@ -99,7 +99,7 @@ This class is thread safe. Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives @@ -160,7 +160,7 @@ Managed Threading - Overview of synchronization primitives + Overview of synchronization primitives diff --git a/xml/System.Threading/Monitor.xml b/xml/System.Threading/Monitor.xml index 7f5d3046035..fb8f51de64b 100644 --- a/xml/System.Threading/Monitor.xml +++ b/xml/System.Threading/Monitor.xml @@ -66,7 +66,7 @@ This type is thread safe. Managed Threading - Threading Objects and Features + Threading Objects and Features diff --git a/xml/System.Threading/Mutex.xml b/xml/System.Threading/Mutex.xml index 2a9d4605f37..65ea8b9cd84 100644 --- a/xml/System.Threading/Mutex.xml +++ b/xml/System.Threading/Mutex.xml @@ -116,7 +116,7 @@ Managed Threading - Mutexes + Mutexes @@ -194,7 +194,7 @@ ]]> Managed Threading - Mutexes + Mutexes @@ -261,7 +261,7 @@ ]]> Managed Threading - Mutexes + Mutexes @@ -370,7 +370,7 @@ There was some other error. The `HResult` property might provide more informatio .NET Framework only: is longer than MAX_PATH (260 characters). Managed Threading - Mutexes + Mutexes @@ -433,7 +433,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. Managed Threading - Mutexes + Mutexes @@ -540,7 +540,7 @@ There was some other error. The `HResult` property might provide more informatio .NET Framework only: is longer than MAX_PATH (260 characters). Managed Threading - Mutexes + Mutexes @@ -606,7 +606,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. Managed Threading - Mutexes + Mutexes @@ -778,7 +778,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. Managed Threading - Mutexes + Mutexes @@ -1195,7 +1195,7 @@ There was some other error. The `HResult` property might provide more informatio The calling thread does not own the mutex. The current instance has already been disposed. Managed Threading - Mutexes + Mutexes diff --git a/xml/System.Threading/ReaderWriterLock.xml b/xml/System.Threading/ReaderWriterLock.xml index b53a91c7310..3067f5b4a24 100644 --- a/xml/System.Threading/ReaderWriterLock.xml +++ b/xml/System.Threading/ReaderWriterLock.xml @@ -106,7 +106,6 @@ This type is thread safe. Managed Threading - ReaderWriterLock @@ -166,7 +165,6 @@ ]]> Managed Threading - ReaderWriterLock @@ -265,7 +263,6 @@ expires before the lock request is granted. Managed Threading - ReaderWriterLock @@ -342,7 +339,6 @@ specifies a negative value other than -1 milliseconds. Managed Threading - ReaderWriterLock @@ -437,7 +433,6 @@ expires before the lock request is granted. Managed Threading - ReaderWriterLock @@ -512,7 +507,6 @@ specifies a negative value other than -1 milliseconds. Managed Threading - ReaderWriterLock @@ -590,7 +584,6 @@ ]]> Managed Threading - ReaderWriterLock @@ -671,7 +664,6 @@ The thread does not have the writer lock. The address of is a null pointer. Managed Threading - ReaderWriterLock @@ -780,7 +772,6 @@ ]]> Managed Threading - ReaderWriterLock @@ -845,7 +836,6 @@ ]]> Managed Threading - ReaderWriterLock @@ -917,7 +907,6 @@ ]]> Managed Threading - ReaderWriterLock @@ -996,7 +985,6 @@ The thread does not have any reader or writer locks. Managed Threading - ReaderWriterLock @@ -1075,7 +1063,6 @@ The thread does not have the writer lock. Managed Threading - ReaderWriterLock @@ -1161,7 +1148,6 @@ The address of is a null pointer. Managed Threading - ReaderWriterLock @@ -1261,7 +1247,6 @@ expires before the lock request is granted. Managed Threading - ReaderWriterLock @@ -1335,7 +1320,6 @@ specifies a negative value other than -1 milliseconds. Managed Threading - ReaderWriterLock @@ -1410,7 +1394,6 @@ ]]> Managed Threading - ReaderWriterLock diff --git a/xml/System.Threading/Semaphore.xml b/xml/System.Threading/Semaphore.xml index a29fb779517..44582106466 100644 --- a/xml/System.Threading/Semaphore.xml +++ b/xml/System.Threading/Semaphore.xml @@ -90,7 +90,7 @@ This type is thread safe. Managed Threading - Semaphore + Semaphore @@ -183,7 +183,7 @@ is less than 0. Managed Threading - Semaphore + Semaphore @@ -288,7 +288,7 @@ There was some other error. The `HResult` property might provide more informatio The named semaphore exists and has access control security, and the user does not have . A synchronization object with the provided cannot be created. A synchronization object of a different type might have the same name. Managed Threading - Semaphore + Semaphore @@ -398,7 +398,7 @@ There was some other error. The `HResult` property might provide more informatio The named semaphore exists and has access control security, and the user does not have . A synchronization object with the provided cannot be created. A synchronization object of a different type might have the same name. Managed Threading - Semaphore + Semaphore @@ -478,7 +478,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. Managed Threading - Semaphore + Semaphore @@ -577,7 +577,7 @@ There was some other error. The `HResult` property might provide more informatio The is too long. Length restrictions may depend on the operating system or configuration. A synchronization object with the provided cannot be created. A synchronization object of a different type might have the same name. Managed Threading - Semaphore + Semaphore @@ -656,7 +656,7 @@ There was some other error. The `HResult` property might provide more informatio An object with the specified exists, but the specified are not compatible with the existing object's options. Managed Threading - Semaphore + Semaphore @@ -717,7 +717,7 @@ An object with the specified exists, but the specified The current object represents a named system semaphore and was not opened with rights. Managed Threading - Semaphore + Semaphore @@ -835,7 +835,7 @@ There was some other error. The `HResult` property might provide more informatio The is too long. Length restrictions may depend on the operating system or configuration. The named semaphore exists, but the user does not have the security access required to use it. Managed Threading - Semaphore + Semaphore @@ -917,7 +917,7 @@ There was some other error. The `HResult` property might provide more informatio The is too long. Length restrictions may depend on the operating system or configuration. The named semaphore exists, but the user does not have the desired security access rights. Managed Threading - Semaphore + Semaphore @@ -986,7 +986,7 @@ There was some other error. The `HResult` property might provide more informatio The is too long. Length restrictions may depend on the operating system or configuration. The named semaphore exists, but the user does not have the security access required to use it. Managed Threading - Semaphore + Semaphore @@ -1085,7 +1085,7 @@ There was some other error. The `HResult` property might provide more informatio The current semaphore represents a named system semaphore, but it was not opened with . Managed Threading - Semaphore + Semaphore @@ -1170,7 +1170,7 @@ There was some other error. The `HResult` property might provide more informatio The current semaphore represents a named system semaphore, but it was not opened with rights. Managed Threading - Semaphore + Semaphore @@ -1234,7 +1234,7 @@ There was some other error. The `HResult` property might provide more informatio The semaphore was not opened with rights. The current object does not represent a named system semaphore. Managed Threading - Semaphore + Semaphore diff --git a/xml/System.Threading/Timeout.xml b/xml/System.Threading/Timeout.xml index 65a7dc51139..33d4ef4d64a 100644 --- a/xml/System.Threading/Timeout.xml +++ b/xml/System.Threading/Timeout.xml @@ -78,7 +78,6 @@ This type is thread safe. - Reader-Writer Locks diff --git a/xml/System.Threading/WaitHandle.xml b/xml/System.Threading/WaitHandle.xml index 33ef9704eba..af99d4459d2 100644 --- a/xml/System.Threading/WaitHandle.xml +++ b/xml/System.Threading/WaitHandle.xml @@ -74,15 +74,15 @@ class encapsulates a native operating system synchronization handle and is used to represent all synchronization objects in the runtime that allow multiple wait operations. For a comparison of wait handles with other synchronization objects, see [Overview of Synchronization Primitives](/dotnet/standard/threading/managed-threading-basicsoverview-of-synchronization-primitives). + The class encapsulates a native operating system synchronization handle and is used to represent all synchronization objects in the runtime that allow multiple wait operations. For a comparison of wait handles with other synchronization objects, see [Overview of Synchronization Primitives](/dotnet/standard/threading/overview-of-synchronization-primitives). The class itself is abstract. Classes derived from define a signaling mechanism to indicate taking or releasing access to a shared resource, but they use the inherited methods to block while waiting for access to shared resources. The classes derived from include: -- The class. See [Mutexes](/dotnet/standard/threading/managed-threading-basicsmutexes). +- The class. See [Mutexes](/dotnet/standard/threading/mutexes). - The class and its derived classes, and . -- The class. See [Semaphore and SemaphoreSlim](/dotnet/standard/threading/managed-threading-basicssemaphore-and-semaphoreslim). +- The class. See [Semaphore and SemaphoreSlim](/dotnet/standard/threading/semaphore-and-semaphoreslim). Threads can block on an individual wait handle by calling the instance method , which is inherited by classes derived from . @@ -117,10 +117,10 @@ This type is thread safe. Threading - Threading Objects and Features - Mutexes - EventWaitHandle, AutoResetEvent, and ManualResetEvent - Semaphores + Threading Objects and Features + Mutexes + EventWaitHandle, AutoResetEvent, and ManualResetEvent + Semaphores diff --git a/xml/System.Windows.Controls.Primitives/GridViewRowPresenterBase.xml b/xml/System.Windows.Controls.Primitives/GridViewRowPresenterBase.xml index 50a614dd788..9b81e3c5d58 100644 --- a/xml/System.Windows.Controls.Primitives/GridViewRowPresenterBase.xml +++ b/xml/System.Windows.Controls.Primitives/GridViewRowPresenterBase.xml @@ -105,7 +105,7 @@ ## XAML Values *ResourceExtension* - A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *ColumnsKey* The key that identifies the requested . The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls.Primitives/StatusBar.xml b/xml/System.Windows.Controls.Primitives/StatusBar.xml index 06fb6a70159..f29f04a97ce 100644 --- a/xml/System.Windows.Controls.Primitives/StatusBar.xml +++ b/xml/System.Windows.Controls.Primitives/StatusBar.xml @@ -49,7 +49,7 @@ ![Status bar](~/add/media/ss-ctl-statusbar.GIF "Status bar") ## Customizing the StatusBar Control - To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [StatusBar Styles and Templates](/dotnet/desktop/wpf/controls/statusbar-styles-and-templates). + To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [StatusBar Styles and Templates](/dotnet/desktop/wpf/controls/statusbar#styles-and-templates). Dependency properties for this control might be set by the control's default style. If a property is set by a default style, the property might change from its default value when the control appears in the application. The default style is determined by which desktop theme is used when the application is running. diff --git a/xml/System.Windows.Controls.Primitives/TickBar.xml b/xml/System.Windows.Controls.Primitives/TickBar.xml index b5e6186bf62..2266fb454a3 100644 --- a/xml/System.Windows.Controls.Primitives/TickBar.xml +++ b/xml/System.Windows.Controls.Primitives/TickBar.xml @@ -42,7 +42,7 @@ ![Slider illustration](~/add/media/genericslider.png "Slider illustration") - controls are typically defined in the of a . For an example of a that is included in a , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider-styles-and-templates). + controls are typically defined in the of a . For an example of a that is included in a , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider#styles-and-templates). The and controls both contain properties that perform the same function. The following table shows the properties and the corresponding properties to which they are bound. The properties take precedence when and properties that are related are both specified. diff --git a/xml/System.Windows.Controls.Primitives/TickBarPlacement.xml b/xml/System.Windows.Controls.Primitives/TickBarPlacement.xml index 92e73f38fa8..63d0acff07c 100644 --- a/xml/System.Windows.Controls.Primitives/TickBarPlacement.xml +++ b/xml/System.Windows.Controls.Primitives/TickBarPlacement.xml @@ -33,7 +33,7 @@ ## Examples - For an example of a `TickBarPlacement` that is included in the of a , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider-styles-and-templates). + For an example of a `TickBarPlacement` that is included in the of a , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider#styles-and-templates). ]]> diff --git a/xml/System.Windows.Controls/Calendar.xml b/xml/System.Windows.Controls/Calendar.xml index 2c17b133766..1a67144cb25 100644 --- a/xml/System.Windows.Controls/Calendar.xml +++ b/xml/System.Windows.Controls/Calendar.xml @@ -239,7 +239,7 @@ Calendar with dates that cannot be selected ## XAML Values *resourceExtension* - One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey* The key that identifies the resource being requested. The key refers to an existing resource in a . @@ -324,7 +324,7 @@ Calendar with dates that cannot be selected ## XAML Values *resourceExtension*\ - One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey*\ The key that identifies the resource being requested. The key refers to an existing resource in a . @@ -409,7 +409,7 @@ Calendar with dates that cannot be selected ## XAML Values *resourceExtension*\ - One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey*\ The key that identifies the resource being requested. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/ContentControl.xml b/xml/System.Windows.Controls/ContentControl.xml index 21790000760..eb59c1b4adb 100644 --- a/xml/System.Windows.Controls/ContentControl.xml +++ b/xml/System.Windows.Controls/ContentControl.xml @@ -71,7 +71,7 @@ Four buttons with different types of content The following example demonstrates how to create the four buttons shown in the Remarks section. > [!NOTE] -> Although the Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of each button, it is not necessary. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/fundamentals/xaml). +> Although the Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of each button, it is not necessary. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/xaml/). :::code language="xaml" source="~/snippets/csharp/System.Windows.Controls/ContentControl/Overview/Window1.xaml" id="Snippet1"::: @@ -267,7 +267,7 @@ Four buttons with different types of content - A control that contains other objects. > [!NOTE] -> Although the Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of each button, it is not necessary. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/fundamentals/xaml). +> Although the Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of each button, it is not necessary. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/xaml/). :::code language="xaml" source="~/snippets/csharp/System.Windows.Controls/ContentControl/Overview/Window1.xaml" id="Snippet1"::: @@ -435,7 +435,7 @@ Four buttons with different types of content ## XAML Values *resourceExtension* - A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey* The key that identifies the requested template selector. The key refers to an existing resource in a . @@ -548,7 +548,7 @@ Four buttons with different types of content ## XAML Values *ResourceExtension* - A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateSelectorKey* The key that identifies the requested template selector. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/Control.xml b/xml/System.Windows.Controls/Control.xml index eca0e3692c7..110d3010477 100644 --- a/xml/System.Windows.Controls/Control.xml +++ b/xml/System.Windows.Controls/Control.xml @@ -30,7 +30,7 @@ ## Remarks The class is the base class for many of the controls you add to an application. The class defines very little behavior; while it is possible to add a to your application, it is far more common to add a control that inherits from , such as a or . - The property, which is a , specifies the appearance of the . If you want to change the appearance of a control but retain its functionality, you should consider creating a new instead of creating a new class. For more information, see [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview). + The property, which is a , specifies the appearance of the . If you want to change the appearance of a control but retain its functionality, you should consider creating a new instead of creating a new class. For more information, see [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview). If you want to create a control with custom behavior as well as allow others to customize its appearance, your control can inherit from the class and define a . If you want to extend the behavior of an existing control, you can inherit from a class that inherits from . diff --git a/xml/System.Windows.Controls/ControlTemplate.xml b/xml/System.Windows.Controls/ControlTemplate.xml index 983079311b0..92160f22bd4 100644 --- a/xml/System.Windows.Controls/ControlTemplate.xml +++ b/xml/System.Windows.Controls/ControlTemplate.xml @@ -39,7 +39,7 @@ ## Remarks The allows you to specify the visual structure of a control. The control author can define the default and the application author can override the to reconstruct the visual structure of the control. - Control templating is one of the many features offered by the WPF styling and templating model. The styling and templating model provides you with such great flexibility that in many cases you do not need to write your own controls. If you are an application author that wants to change the visualization of your control or to replace the of an existing control, see the [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview) topic for examples and an in-depth discussion. + Control templating is one of the many features offered by the WPF styling and templating model. The styling and templating model provides you with such great flexibility that in many cases you do not need to write your own controls. If you are an application author that wants to change the visualization of your control or to replace the of an existing control, see the [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview) topic for examples and an in-depth discussion. If you are writing your own control, see "Create a Custom Control" in the [Control Authoring Overview](/dotnet/desktop/wpf/controls/control-authoring-overview). diff --git a/xml/System.Windows.Controls/DataGridTemplateColumn.xml b/xml/System.Windows.Controls/DataGridTemplateColumn.xml index 6d6b06b4416..1045b9cc01d 100644 --- a/xml/System.Windows.Controls/DataGridTemplateColumn.xml +++ b/xml/System.Windows.Controls/DataGridTemplateColumn.xml @@ -27,7 +27,7 @@ type enables you to create your own column types by specifying the cell templates to use when displaying and editing values. To specify the template that is used to display the contents of a cell that is not in editing mode, set the property. To specify the template that is used to display the contents of a cell that is in editing mode, set the property. For more information about templates, see [Data Templating Overview](/dotnet/desktop/wpf/data/data-templating-overview) and [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview). + The type enables you to create your own column types by specifying the cell templates to use when displaying and editing values. To specify the template that is used to display the contents of a cell that is not in editing mode, set the property. To specify the template that is used to display the contents of a cell that is in editing mode, set the property. For more information about templates, see [Data Templating Overview](/dotnet/desktop/wpf/data/data-templating-overview) and [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview). For convenience, provides the following pre-defined column types: @@ -113,7 +113,7 @@ . @@ -244,7 +244,7 @@ . diff --git a/xml/System.Windows.Controls/DatePicker.xml b/xml/System.Windows.Controls/DatePicker.xml index 271bc672eeb..8f693d4394b 100644 --- a/xml/System.Windows.Controls/DatePicker.xml +++ b/xml/System.Windows.Controls/DatePicker.xml @@ -341,7 +341,7 @@ DatePicker with dates that are not selectable ## XAML Values *resourceExtension* - One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource` or `DynamicResource`. For more information, see [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/Decorator.xml b/xml/System.Windows.Controls/Decorator.xml index f64a35f75fc..d3b8d25df92 100644 --- a/xml/System.Windows.Controls/Decorator.xml +++ b/xml/System.Windows.Controls/Decorator.xml @@ -48,7 +48,7 @@ ## Examples The following example adds a the property of a . - **Note** The Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of the , but it is not necessary because the applies the to the property. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/fundamentals/xaml). + **Note** The Extensible Application Markup Language (XAML) version of the example could use the `` tags around the content of the , but it is not necessary because the applies the to the property. For more information, see [XAML Overview (WPF)](/dotnet/desktop/wpf/xaml/). :::code language="xaml" source="~/snippets/csharp/System.Windows.Controls/Decorator/Overview/simpleborder.xaml" id="Snippetsimpleborderwholepage"::: diff --git a/xml/System.Windows.Controls/GridSplitter.xml b/xml/System.Windows.Controls/GridSplitter.xml index 0fe838aa9bf..be90f00bc68 100644 --- a/xml/System.Windows.Controls/GridSplitter.xml +++ b/xml/System.Windows.Controls/GridSplitter.xml @@ -428,7 +428,7 @@ ## XAML Attribute Usage @@ -440,7 +440,7 @@ ## XAML Values `ResourceExtension` - One of the following: `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). `StyleResourceKey` The key that identifies the style being requested. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/GridView.xml b/xml/System.Windows.Controls/GridView.xml index 4e5c5a886d3..a5089f6670d 100644 --- a/xml/System.Windows.Controls/GridView.xml +++ b/xml/System.Windows.Controls/GridView.xml @@ -425,7 +425,7 @@ This property represents one of several ways to lay out and style column headers. For more information, see [GridView Column Header Styles and Templates Overview](/dotnet/desktop/wpf/controls/gridview). - When you set styles, there are some restrictions. For more information, see [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview). + When you set styles, there are some restrictions. For more information, see [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview). ## XAML Attribute Usage @@ -440,7 +440,7 @@ ## XAML Values `ResourceExtension` - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). `StyleResourceKey` The key that identifies the style being requested. The key refers to an existing resource in a . @@ -707,7 +707,7 @@ ## XAML Values `ResourceExtension` - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). `TemplateResourceKey` The key that identifies the template being requested. The key refers to an existing resource in a . @@ -835,7 +835,7 @@ ## XAML Values `ResourceExtension` - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). `DataTemplateSelectorClassKey` The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to the application resource dictionary. diff --git a/xml/System.Windows.Controls/GridViewColumn.xml b/xml/System.Windows.Controls/GridViewColumn.xml index 407227a5e6f..7c3d4bfb910 100644 --- a/xml/System.Windows.Controls/GridViewColumn.xml +++ b/xml/System.Windows.Controls/GridViewColumn.xml @@ -192,7 +192,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . @@ -326,7 +326,7 @@ A class derived from that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. @@ -555,7 +555,7 @@ Properties that define the content, layout, and style of a column header are found in many related classes, and some of these properties have functionality that is similar or the same. For more information, see [GridView Column Header Styles and Templates Overview](/dotnet/desktop/wpf/controls/gridview). - When you set a style, some restrictions apply. For more information, see the [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview). + When you set a style, some restrictions apply. For more information, see the [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview). ## XAML Attribute Usage @@ -570,7 +570,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *StyleResourceKey* The key that identifies the style being requested. The key refers to an existing resource in a . @@ -808,7 +808,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . @@ -936,7 +936,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. diff --git a/xml/System.Windows.Controls/GridViewHeaderRowPresenter.xml b/xml/System.Windows.Controls/GridViewHeaderRowPresenter.xml index a69a447d284..4bb5f149e9c 100644 --- a/xml/System.Windows.Controls/GridViewHeaderRowPresenter.xml +++ b/xml/System.Windows.Controls/GridViewHeaderRowPresenter.xml @@ -225,7 +225,7 @@ You can customize column headers in a view mode by using a variety of properties that are found in this class and in related classes. For more information about these properties, and about the precedence between them, see [GridView Column Header Styles and Templates Overview](/dotnet/desktop/wpf/controls/gridview). - When you set styles, some restrictions apply. For more information, see the [Styling and Templating](/dotnet/desktop/wpf/fundamentals/styles-templates-overview). + When you set styles, some restrictions apply. For more information, see the [Styling and Templating](/dotnet/desktop/wpf/controls/styles-templates-overview). ## XAML Attribute Usage @@ -240,7 +240,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *StyleResourceKey* The key that identifies the style being requested. The key refers to an existing resource in a . @@ -511,7 +511,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . @@ -625,7 +625,7 @@ A class derived from that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. diff --git a/xml/System.Windows.Controls/GroupStyle.xml b/xml/System.Windows.Controls/GroupStyle.xml index 537ad02bb50..bf0eb254b77 100644 --- a/xml/System.Windows.Controls/GroupStyle.xml +++ b/xml/System.Windows.Controls/GroupStyle.xml @@ -204,7 +204,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *StyleResourceKey* The key that identifies the style being requested. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/HeaderedContentControl.xml b/xml/System.Windows.Controls/HeaderedContentControl.xml index f8b59849762..bfbb00ff05b 100644 --- a/xml/System.Windows.Controls/HeaderedContentControl.xml +++ b/xml/System.Windows.Controls/HeaderedContentControl.xml @@ -430,7 +430,7 @@ TabControl with different types in the Header property ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . @@ -552,7 +552,7 @@ TabControl with different types in the Header property A class derived from that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. diff --git a/xml/System.Windows.Controls/HeaderedItemsControl.xml b/xml/System.Windows.Controls/HeaderedItemsControl.xml index 3ac749df012..6f73582a50c 100644 --- a/xml/System.Windows.Controls/HeaderedItemsControl.xml +++ b/xml/System.Windows.Controls/HeaderedItemsControl.xml @@ -425,7 +425,7 @@ ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *TemplateResourceKey* The key that identifies the template being requested. The key refers to an existing resource in a . @@ -549,7 +549,7 @@ A class derived from that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. diff --git a/xml/System.Windows.Controls/Page.xml b/xml/System.Windows.Controls/Page.xml index ea3a13cca2d..ab1f33dfb07 100644 --- a/xml/System.Windows.Controls/Page.xml +++ b/xml/System.Windows.Controls/Page.xml @@ -1313,7 +1313,7 @@ ## XAML Values *resourceExtension* - A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + A markup extension that identifies how to reference the template resource, either `StaticResource` or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *styleResourceKey* The key that identifies the requested template selector. The key refers to an existing resource in a . diff --git a/xml/System.Windows.Controls/ScrollViewer.xml b/xml/System.Windows.Controls/ScrollViewer.xml index c5f3044a182..b4b83ac79fe 100644 --- a/xml/System.Windows.Controls/ScrollViewer.xml +++ b/xml/System.Windows.Controls/ScrollViewer.xml @@ -59,7 +59,7 @@ Because the scroll bars for a element are defined in the default style of the element, scroll bars will no longer appear if you apply a custom style to a . Scroll bars must be defined in the custom style for them to appear. ## Customizing the ScrollViewer Control - To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [ScrollViewer Styles and Templates](/dotnet/desktop/wpf/controls/scrollviewer-styles-and-templates). + To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [ScrollViewer Styles and Templates](/dotnet/desktop/wpf/controls/scrollviewer#styles-and-templates). Dependency properties for this control might be set by the control's default style. If a property is set by a default style, the property might change from its default value when the control appears in the application. The default style is determined by which desktop theme is used when the application is running. diff --git a/xml/System.Windows.Controls/Slider.xml b/xml/System.Windows.Controls/Slider.xml index c591ffb5240..004e9010a5b 100644 --- a/xml/System.Windows.Controls/Slider.xml +++ b/xml/System.Windows.Controls/Slider.xml @@ -76,7 +76,7 @@ > If the value of the is animated, the user may no longer be able to interact with the control after the animation finishes. See [How to: Set a Property After Animating It with a Storyboard](/dotnet/desktop/wpf/graphics-multimedia/how-to-set-a-property-after-animating-it-with-a-storyboard) for options of how you can restore user control of a after it is animated. ## Customizing the Slider Control - To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider-styles-and-templates). + To apply the same property settings to multiple controls, use the property. You can modify the default to give the control a unique appearance. For more information about creating a , see [How to create a template for a control](/dotnet/desktop/wpf/controls/how-to-create-apply-template). To see the parts and states that are specific to the , see [Slider Styles and Templates](/dotnet/desktop/wpf/controls/slider#styles-and-templates). Dependency properties for this control might be set by the control's default style. If a property is set by a default style, the property might change from its default value when the control appears in the application. The default style is determined by which desktop theme is used when the application is running. diff --git a/xml/System.Windows.Controls/TabControl.xml b/xml/System.Windows.Controls/TabControl.xml index 9abc526eafb..36d48428b9c 100644 --- a/xml/System.Windows.Controls/TabControl.xml +++ b/xml/System.Windows.Controls/TabControl.xml @@ -212,10 +212,11 @@ The following example creates a and bi ## XAML Values - *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). - *TemplateResourceKey* + *ResourceExtension*\ + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). + + *TemplateResourceKey*\ The key that identifies the template being requested. The key refers to an existing resource in a . > [!NOTE] @@ -229,8 +230,6 @@ The following example creates a and bi |Identifier field|| |Metadata properties set to `true`|None| - - ## Examples The following example creates two objects. The called `contentTemplate` is assigned to the of the and the called `tabItemTemplate` is assigned to the of the second . All objects contain the white rectangle defined in `contentTemplate`, except the second , which has a gray rectangle, as defined in `tabItemTemplate`. @@ -326,7 +325,7 @@ The following example creates a and bi ## XAML Values *ResourceExtension* - One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + One of the following: `StaticResource`, or `DynamicResource`. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). *DataTemplateSelectorClassKey* The key that identifies the selector implementation being requested. The key refers to a derived class that implements a practical override. For information about how to map your custom class, see [XAML Namespaces and Namespace Mapping for WPF XAML](/dotnet/desktop/wpf/advanced/xaml-namespaces-and-namespace-mapping-for-wpf-xaml). You can also programmatically add an instance of your class as a resource to a resource dictionary. diff --git a/xml/System.Windows.Controls/UserControl.xml b/xml/System.Windows.Controls/UserControl.xml index dddbfcdc7ec..01a8c6437e4 100644 --- a/xml/System.Windows.Controls/UserControl.xml +++ b/xml/System.Windows.Controls/UserControl.xml @@ -25,31 +25,31 @@ Provides a simple way to create a control. - . Before you do so, consider that your control will not support templates and therefore will not support complex customization. However, deriving from is a suitable model if you want to build your control by adding existing elements to it, similar to how you build an application, and if you do not need to support complex customization. (If you want to use templates with your control, derive from instead.) For more information about the different models for authoring controls, see [Control Authoring Overview](/dotnet/desktop/wpf/controls/control-authoring-overview). - - A is a , which means that it can contain a single object of any type (such as a string, an image, or a panel). For more information, see the class. - + . Before you do so, consider that your control will not support templates and therefore will not support complex customization. However, deriving from is a suitable model if you want to build your control by adding existing elements to it, similar to how you build an application, and if you do not need to support complex customization. (If you want to use templates with your control, derive from instead.) For more information about the different models for authoring controls, see [Control Authoring Overview](/dotnet/desktop/wpf/controls/control-authoring-overview). + + A is a , which means that it can contain a single object of any type (such as a string, an image, or a panel). For more information, see the class. + Dependency properties for this control might be set by the control's default style. If a property is set by a default style, the property might change from its default value when the control appears in the application. The default style is determined by which desktop theme is used when the application is running. - - - -## Examples - The following example shows how to create a simple `NumericUpDown` . - - :::code language="xaml" source="~/snippets/csharp/System.Windows.Controls/UserControl/Overview/NumericUpDown.xaml" id="Snippetmarkup"::: - - The following shows the logic of this : - + + + +## Examples + The following example shows how to create a simple `NumericUpDown` . + + :::code language="xaml" source="~/snippets/csharp/System.Windows.Controls/UserControl/Overview/NumericUpDown.xaml" id="Snippetmarkup"::: + + The following shows the logic of this : + :::code language="csharp" source="~/snippets/csharp/System.Windows.Controls/UserControl/Overview/NumericUpDown.xaml.cs" id="Snippetcodebehind"::: - :::code language="vb" source="~/snippets/visualbasic/System.Windows.Controls/UserControl/Overview/numericupdown.xaml.vb" id="Snippetcodebehind"::: - - For more information, see [Control Authoring Overview](/dotnet/desktop/wpf/controls/control-authoring-overview). - + :::code language="vb" source="~/snippets/visualbasic/System.Windows.Controls/UserControl/Overview/numericupdown.xaml.vb" id="Snippetcodebehind"::: + + For more information, see [Control Authoring Overview](/dotnet/desktop/wpf/controls/control-authoring-overview). + ]]> diff --git a/xml/System.Windows.Markup/DictionaryKeyPropertyAttribute.xml b/xml/System.Windows.Markup/DictionaryKeyPropertyAttribute.xml index 3f37631f16e..be80a77a5db 100644 --- a/xml/System.Windows.Markup/DictionaryKeyPropertyAttribute.xml +++ b/xml/System.Windows.Markup/DictionaryKeyPropertyAttribute.xml @@ -50,20 +50,20 @@ dictionary (such as the WPF ) require a key. In XAML, the key is typically specified by `x:Key` attribute in the XAML markup for each item in the . The is applied to classes that work with an implicit key, where the key to use for inclusion comes from a different property value in the class. Instances of the class applying the can be included in an without an explicit key so long as the property referenced by has a value that is valid as a key in that dictionary implementation. - In previous versions of the .NET Framework, this class existed in the WPF-specific assembly WindowsBase. In .NET Framework 4, is in the System.Xaml assembly. For more information, see [Types Migrated from WPF to System.Xaml](/dotnet/framework/xaml-services/types-migrated-from-wpf-to-system-xaml). +Items in an dictionary (such as the WPF ) require a key. In XAML, the key is typically specified by `x:Key` attribute in the XAML markup for each item in the . The is applied to classes that work with an implicit key, where the key to use for inclusion comes from a different property value in the class. Instances of the class applying the can be included in an without an explicit key so long as the property referenced by has a value that is valid as a key in that dictionary implementation. -## WPF Usage Notes - The following list references examples of WPF APIs where this attribute is applied: + In .NET Framework versions prior to 4, this class existed in the WPF-specific assembly WindowsBase. In .NET Framework 4, is in the System.Xaml assembly. For more information, see [Types Migrated from WPF to System.Xaml](/dotnet/framework/xaml-services/types-migrated-from-wpf-to-system-xaml). -- +## WPF Usage Notes -- +The following list references examples of WPF APIs where this attribute is applied: -- +- +- +- - For more information about the WPF resource dictionary implications of , see [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + For more information about the WPF resource dictionary implications of , see [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). ]]> diff --git a/xml/System.Windows.Media.Animation/AnimationTimeline.xml b/xml/System.Windows.Media.Animation/AnimationTimeline.xml index 99d8f5f0c6f..9581b400f7f 100644 --- a/xml/System.Windows.Media.Animation/AnimationTimeline.xml +++ b/xml/System.Windows.Media.Animation/AnimationTimeline.xml @@ -29,7 +29,7 @@ ## Remarks An is a type of object that generates output values based on its timing progress. All animation types inherit from . - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/ByteAnimation.xml b/xml/System.Windows.Media.Animation/ByteAnimation.xml index 8620a45bbea..0e64771594d 100644 --- a/xml/System.Windows.Media.Animation/ByteAnimation.xml +++ b/xml/System.Windows.Media.Animation/ByteAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/ColorAnimation.xml b/xml/System.Windows.Media.Animation/ColorAnimation.xml index 258acafe93b..b62e14b6b9e 100644 --- a/xml/System.Windows.Media.Animation/ColorAnimation.xml +++ b/xml/System.Windows.Media.Animation/ColorAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/DecimalAnimation.xml b/xml/System.Windows.Media.Animation/DecimalAnimation.xml index e3e0e710b97..a51adf50429 100644 --- a/xml/System.Windows.Media.Animation/DecimalAnimation.xml +++ b/xml/System.Windows.Media.Animation/DecimalAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/DoubleAnimation.xml b/xml/System.Windows.Media.Animation/DoubleAnimation.xml index c677d343547..dab466ac2b7 100644 --- a/xml/System.Windows.Media.Animation/DoubleAnimation.xml +++ b/xml/System.Windows.Media.Animation/DoubleAnimation.xml @@ -47,7 +47,7 @@ To use other interpolation methods or animate between more than two target values, use a object. ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Int16Animation.xml b/xml/System.Windows.Media.Animation/Int16Animation.xml index 8bcabb21683..b5c8b015c53 100644 --- a/xml/System.Windows.Media.Animation/Int16Animation.xml +++ b/xml/System.Windows.Media.Animation/Int16Animation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Int32Animation.xml b/xml/System.Windows.Media.Animation/Int32Animation.xml index b22a3ab7b74..eaaa460e739 100644 --- a/xml/System.Windows.Media.Animation/Int32Animation.xml +++ b/xml/System.Windows.Media.Animation/Int32Animation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Int64Animation.xml b/xml/System.Windows.Media.Animation/Int64Animation.xml index a09bf554dc8..513de413aef 100644 --- a/xml/System.Windows.Media.Animation/Int64Animation.xml +++ b/xml/System.Windows.Media.Animation/Int64Animation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Point3DAnimation.xml b/xml/System.Windows.Media.Animation/Point3DAnimation.xml index a5f1479ace8..ddecec09514 100644 --- a/xml/System.Windows.Media.Animation/Point3DAnimation.xml +++ b/xml/System.Windows.Media.Animation/Point3DAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/PointAnimation.xml b/xml/System.Windows.Media.Animation/PointAnimation.xml index 8cb22ce66f1..b346660c238 100644 --- a/xml/System.Windows.Media.Animation/PointAnimation.xml +++ b/xml/System.Windows.Media.Animation/PointAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/QuaternionAnimation.xml b/xml/System.Windows.Media.Animation/QuaternionAnimation.xml index 4467750c19d..2b8c91d21d2 100644 --- a/xml/System.Windows.Media.Animation/QuaternionAnimation.xml +++ b/xml/System.Windows.Media.Animation/QuaternionAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/RectAnimation.xml b/xml/System.Windows.Media.Animation/RectAnimation.xml index dc1c24bb438..63f279bb017 100644 --- a/xml/System.Windows.Media.Animation/RectAnimation.xml +++ b/xml/System.Windows.Media.Animation/RectAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Rotation3DAnimation.xml b/xml/System.Windows.Media.Animation/Rotation3DAnimation.xml index a6eceef5378..1dd170c053c 100644 --- a/xml/System.Windows.Media.Animation/Rotation3DAnimation.xml +++ b/xml/System.Windows.Media.Animation/Rotation3DAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/SingleAnimation.xml b/xml/System.Windows.Media.Animation/SingleAnimation.xml index 8c0a650b42d..cace32985b5 100644 --- a/xml/System.Windows.Media.Animation/SingleAnimation.xml +++ b/xml/System.Windows.Media.Animation/SingleAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/SizeAnimation.xml b/xml/System.Windows.Media.Animation/SizeAnimation.xml index 640176f2b8c..786865b8558 100644 --- a/xml/System.Windows.Media.Animation/SizeAnimation.xml +++ b/xml/System.Windows.Media.Animation/SizeAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/ThicknessAnimation.xml b/xml/System.Windows.Media.Animation/ThicknessAnimation.xml index 2fa1b53f246..1cbdb16dc74 100644 --- a/xml/System.Windows.Media.Animation/ThicknessAnimation.xml +++ b/xml/System.Windows.Media.Animation/ThicknessAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/Vector3DAnimation.xml b/xml/System.Windows.Media.Animation/Vector3DAnimation.xml index 8469ae7d045..39c723279a6 100644 --- a/xml/System.Windows.Media.Animation/Vector3DAnimation.xml +++ b/xml/System.Windows.Media.Animation/Vector3DAnimation.xml @@ -49,7 +49,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Animation/VectorAnimation.xml b/xml/System.Windows.Media.Animation/VectorAnimation.xml index bea6a2f310b..791ea1c608a 100644 --- a/xml/System.Windows.Media.Animation/VectorAnimation.xml +++ b/xml/System.Windows.Media.Animation/VectorAnimation.xml @@ -48,7 +48,7 @@ For information about applying multiple animations to a single property, see [Key-Frame Animations Overview](/dotnet/desktop/wpf/graphics-multimedia/key-frame-animations-overview). ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media.Media3D/GeneralTransform3DCollection.xml b/xml/System.Windows.Media.Media3D/GeneralTransform3DCollection.xml index 24fbd3c90dd..9814e8e1ceb 100644 --- a/xml/System.Windows.Media.Media3D/GeneralTransform3DCollection.xml +++ b/xml/System.Windows.Media.Media3D/GeneralTransform3DCollection.xml @@ -56,7 +56,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). is introduced in the .NET Framework version 3.5. For more information, see [Versions and Dependencies](/dotnet/framework/migration-guide/versions-and-dependencies). diff --git a/xml/System.Windows.Media/DoubleCollection.xml b/xml/System.Windows.Media/DoubleCollection.xml index b379513f312..6d451fac63b 100644 --- a/xml/System.Windows.Media/DoubleCollection.xml +++ b/xml/System.Windows.Media/DoubleCollection.xml @@ -69,7 +69,7 @@ ## Remarks Members of this class behave exactly as described by the , , and documentation, except that this implementation throws an if you attempt to insert `null` into the collection. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Attribute Usage diff --git a/xml/System.Windows.Media/Drawing.xml b/xml/System.Windows.Media/Drawing.xml index 0cbfae101b4..edf1f09f46f 100644 --- a/xml/System.Windows.Media/Drawing.xml +++ b/xml/System.Windows.Media/Drawing.xml @@ -36,7 +36,7 @@ ## Remarks objects are light-weight objects that enable you to add geometric shapes, images, text, and media to an application. objects are considered light-weight because they do not provide support for [Layout](/dotnet/desktop/wpf/advanced/layout), [Input Overview](/dotnet/desktop/wpf/advanced/input-overview), and focus. Because of their performance benefits, drawings are ideal for backgrounds and clip art. You also use drawings when programming at the level. - Because they inherit from the class, objects provide additional features that make them useful for describing clip art and backgrounds: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because they inherit from the class, objects provide additional features that make them useful for describing clip art and backgrounds: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). There are different types of objects for different types of content: , , , , and . diff --git a/xml/System.Windows.Media/DrawingCollection.xml b/xml/System.Windows.Media/DrawingCollection.xml index 1d1cc177d14..9959bd80d74 100644 --- a/xml/System.Windows.Media/DrawingCollection.xml +++ b/xml/System.Windows.Media/DrawingCollection.xml @@ -56,7 +56,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Implicit Collection Usage diff --git a/xml/System.Windows.Media/DrawingGroup.xml b/xml/System.Windows.Media/DrawingGroup.xml index 31a08689d69..42cb82c897a 100644 --- a/xml/System.Windows.Media/DrawingGroup.xml +++ b/xml/System.Windows.Media/DrawingGroup.xml @@ -40,7 +40,7 @@ For more information about objects, see [Drawing Objects Overview](/dotnet/desktop/wpf/graphics-multimedia/drawing-objects-overview). - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/Geometry.xml b/xml/System.Windows.Media/Geometry.xml index 8e489822198..d9d5b7ddc80 100644 --- a/xml/System.Windows.Media/Geometry.xml +++ b/xml/System.Windows.Media/Geometry.xml @@ -53,7 +53,7 @@ The class, on the other hand, simply defines the geometry of a shape, and cannot render itself. Because of its simplicity, it has a wider range of uses. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/GradientStopCollection.xml b/xml/System.Windows.Media/GradientStopCollection.xml index 14fde441b9a..a463b92eac1 100644 --- a/xml/System.Windows.Media/GradientStopCollection.xml +++ b/xml/System.Windows.Media/GradientStopCollection.xml @@ -61,7 +61,7 @@ Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Implicit Collection Usage diff --git a/xml/System.Windows.Media/ImageBrush.xml b/xml/System.Windows.Media/ImageBrush.xml index 7382ffac414..38b1eef2fb8 100644 --- a/xml/System.Windows.Media/ImageBrush.xml +++ b/xml/System.Windows.Media/ImageBrush.xml @@ -38,7 +38,7 @@ An ImageBrush can paint shapes, controls, text, and more For more information about features, see [Painting with Images, Drawings, and Visuals](/dotnet/desktop/wpf/graphics-multimedia/painting-with-images-drawings-and-visuals) overview. ## Freezable Features - Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because the class inherits from , objects gain several special features, which include the following: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/Int32Collection.xml b/xml/System.Windows.Media/Int32Collection.xml index 139cf87da51..a9f17811de1 100644 --- a/xml/System.Windows.Media/Int32Collection.xml +++ b/xml/System.Windows.Media/Int32Collection.xml @@ -69,7 +69,7 @@ ## Remarks Members of this class behave exactly as described by the , , and documentation, except that this implementation throws an if you attempt to insert `null` into the collection. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Attribute Usage diff --git a/xml/System.Windows.Media/LineGeometry.xml b/xml/System.Windows.Media/LineGeometry.xml index b2c1ccf50c3..048b324e9e5 100644 --- a/xml/System.Windows.Media/LineGeometry.xml +++ b/xml/System.Windows.Media/LineGeometry.xml @@ -30,7 +30,7 @@ ## Remarks To create multiple connected lines, use a or segment with the and classes. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/LineSegment.xml b/xml/System.Windows.Media/LineSegment.xml index 9a16ab53a91..24200d9f45c 100644 --- a/xml/System.Windows.Media/LineSegment.xml +++ b/xml/System.Windows.Media/LineSegment.xml @@ -32,7 +32,7 @@ The class does not contain a property for the starting point of the line. The starting point of the line is the end point of the previous segment, or the of the if no other segments exist. - **Freezable Features:** Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/PathFigureCollection.xml b/xml/System.Windows.Media/PathFigureCollection.xml index 3a13180997d..1e588b5d795 100644 --- a/xml/System.Windows.Media/PathFigureCollection.xml +++ b/xml/System.Windows.Media/PathFigureCollection.xml @@ -69,7 +69,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Implicit Collection Usage diff --git a/xml/System.Windows.Media/PathSegment.xml b/xml/System.Windows.Media/PathSegment.xml index cdd03ff11da..d4d178b49d3 100644 --- a/xml/System.Windows.Media/PathSegment.xml +++ b/xml/System.Windows.Media/PathSegment.xml @@ -36,7 +36,7 @@ ## Remarks Classes that derive from , such as , , and , represent specific types of geometric segments. - **Freezable Features:** Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/PathSegmentCollection.xml b/xml/System.Windows.Media/PathSegmentCollection.xml index ecc7e8778b8..44a4f36d269 100644 --- a/xml/System.Windows.Media/PathSegmentCollection.xml +++ b/xml/System.Windows.Media/PathSegmentCollection.xml @@ -62,7 +62,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Implicit Collection Usage diff --git a/xml/System.Windows.Media/PointCollection.xml b/xml/System.Windows.Media/PointCollection.xml index 9f739d1b3dc..3a0ced4bf2e 100644 --- a/xml/System.Windows.Media/PointCollection.xml +++ b/xml/System.Windows.Media/PointCollection.xml @@ -69,7 +69,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Attribute Usage diff --git a/xml/System.Windows.Media/QuadraticBezierSegment.xml b/xml/System.Windows.Media/QuadraticBezierSegment.xml index aae0edec390..ddc4efef4a6 100644 --- a/xml/System.Windows.Media/QuadraticBezierSegment.xml +++ b/xml/System.Windows.Media/QuadraticBezierSegment.xml @@ -33,7 +33,7 @@ The class does not contain a property for the starting point of the line. The starting point of the line is the end point of the previous segment, or the of the if no other segments exist. ## Freezable Features - Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because objects inherit from the class, they provide several special features: they can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features that are provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/RadialGradientBrush.xml b/xml/System.Windows.Media/RadialGradientBrush.xml index 7e604276077..77e469da203 100644 --- a/xml/System.Windows.Media/RadialGradientBrush.xml +++ b/xml/System.Windows.Media/RadialGradientBrush.xml @@ -39,7 +39,7 @@ Radial gradient with a highlighted focal point > objects are rendered using hardware acceleration on 2 systems. For more information about hardware tiers, see [Graphics Rendering Tiers](/dotnet/desktop/wpf/advanced/graphics-rendering-tiers). ## Freezable Features - Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/RotateTransform.xml b/xml/System.Windows.Media/RotateTransform.xml index 058e5f20a99..d4d22de9cd7 100644 --- a/xml/System.Windows.Media/RotateTransform.xml +++ b/xml/System.Windows.Media/RotateTransform.xml @@ -32,7 +32,7 @@ When you use a , realize that the transformation rotates the coordinate system for a particular object about the point (0, 0). Therefore, depending on the position of the object, it might not rotate in place (around its center). For example, if an object is positioned 200 units from 0 along the x-axis, a rotation of 30 degrees can swing the object 30 degrees along a circle that has a radius of 200, which is drawn around the origin. To rotate an object in place, set the and of the to the center of the object to rotate. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/ScaleTransform.xml b/xml/System.Windows.Media/ScaleTransform.xml index 24c4b33748e..0eb9d3eca0d 100644 --- a/xml/System.Windows.Media/ScaleTransform.xml +++ b/xml/System.Windows.Media/ScaleTransform.xml @@ -30,7 +30,7 @@ ## Remarks Use a to stretch or shrink an object horizontally or vertically. The property specifies by how much to stretch or shrink an object along the x-axis, and the property specifies by how much to stretch or shrink an object along the y-axis. Scale operations are centered on the point specified by the and properties. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/SkewTransform.xml b/xml/System.Windows.Media/SkewTransform.xml index c58e93b65b7..19bceb9731f 100644 --- a/xml/System.Windows.Media/SkewTransform.xml +++ b/xml/System.Windows.Media/SkewTransform.xml @@ -30,7 +30,7 @@ ## Remarks A is useful for creating the illusion of 3-dimensional depth in a 2-D object. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/SolidColorBrush.xml b/xml/System.Windows.Media/SolidColorBrush.xml index db999425432..53f79844d39 100644 --- a/xml/System.Windows.Media/SolidColorBrush.xml +++ b/xml/System.Windows.Media/SolidColorBrush.xml @@ -30,7 +30,7 @@ ## Remarks For convenience, the class provides a set of commonly used objects, such as and . - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Attribute Usage diff --git a/xml/System.Windows.Media/TransformCollection.xml b/xml/System.Windows.Media/TransformCollection.xml index f4a3aad0cf9..ea78155fef9 100644 --- a/xml/System.Windows.Media/TransformCollection.xml +++ b/xml/System.Windows.Media/TransformCollection.xml @@ -56,7 +56,7 @@ ## Remarks Except as noted, members of this class behave exactly as described by the , , and documentation. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Implicit Collection Usage diff --git a/xml/System.Windows.Media/TransformGroup.xml b/xml/System.Windows.Media/TransformGroup.xml index e6c258ac99d..fed9d9bfd0b 100644 --- a/xml/System.Windows.Media/TransformGroup.xml +++ b/xml/System.Windows.Media/TransformGroup.xml @@ -38,7 +38,7 @@ In a composite transformation, the order of individual transformations is important. For example, if you first rotate, then scale, then translate, you get a different result than if you first translate, then rotate, then scale. One reason order is significant is that transformations like rotation and scaling are done with respect to the origin of the coordinate system. Scaling an object that is centered at the origin produces a different result than scaling an object that has been moved away from the origin. Similarly, rotating an object that is centered at the origin produces a different result than rotating an object that has been moved away from the origin. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/TranslateTransform.xml b/xml/System.Windows.Media/TranslateTransform.xml index ccb0cce8571..2b1bdeca29c 100644 --- a/xml/System.Windows.Media/TranslateTransform.xml +++ b/xml/System.Windows.Media/TranslateTransform.xml @@ -33,7 +33,7 @@ ![Translate Matrix 100010dxdy1](~/add/media/translate-matrix.gif "Translate Matrix 100010dxdy1") Typical 3x3 matrix for 2-D translations - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ]]> diff --git a/xml/System.Windows.Media/VectorCollection.xml b/xml/System.Windows.Media/VectorCollection.xml index 50bef157065..195e7aaeee9 100644 --- a/xml/System.Windows.Media/VectorCollection.xml +++ b/xml/System.Windows.Media/VectorCollection.xml @@ -69,7 +69,7 @@ ## Remarks Members of this class behave exactly as described by the , , and documentation, except that this implementation throws an if you attempt to insert `null` into the collection. - **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). + **Freezable Features:** Because it inherits from the class, the class provides several special features: objects can be declared as [resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference), shared among multiple objects, made read-only to improve performance, cloned, and made thread-safe. For more information about the different features provided by objects, see the [Freezable Objects Overview](/dotnet/desktop/wpf/advanced/freezable-objects-overview). ## XAML Attribute Usage diff --git a/xml/System.Windows.Media/VisualBrush.xml b/xml/System.Windows.Media/VisualBrush.xml index 56aceea5e82..c124dd4cd28 100644 --- a/xml/System.Windows.Media/VisualBrush.xml +++ b/xml/System.Windows.Media/VisualBrush.xml @@ -455,7 +455,7 @@ An expression that evaluates to an existing instance. `resourceExpression` - A `StaticResource` or `DynamicResource` that evaluates to an existing instance. See [XAML Resources](/dotnet/desktop/wpf/fundamentals/xaml-resources-define). + A `StaticResource` or `DynamicResource` that evaluates to an existing instance. See [XAML Resources](/dotnet/desktop/wpf/systems/xaml-resources-how-to-define-and-reference). ## Dependency Property Information diff --git a/xml/System/Action.xml b/xml/System/Action.xml index 2fc9a62c6e9..b5142338a50 100644 --- a/xml/System/Action.xml +++ b/xml/System/Action.xml @@ -70,7 +70,7 @@ You can use this delegate to pass a method as a parameter without explicitly declaring a custom delegate. The encapsulated method must correspond to the method signature that is defined by this delegate. This means that the encapsulated method must have no parameters and no return value. (In C#, the method must return `void`. In F# the function or method must return `unit`. In Visual Basic, it must be defined by the `Sub`…`End Sub` construct. It can also be a method that returns a value that is ignored.) Typically, such a method is used to perform an operation. > [!NOTE] -> To reference a method that has no parameters and returns a value, use the generic delegate instead. +> To reference a method that has no parameters and returns a value, use the generic delegate instead. When you use the delegate, you do not have to explicitly define a delegate that encapsulates a parameterless procedure. For example, the following code explicitly declares a delegate named `ShowValue` and assigns a reference to the `Name.DisplayToWindow` instance method to its delegate instance. diff --git a/xml/System/FlagsAttribute.xml b/xml/System/FlagsAttribute.xml index e673c58e1e3..07c3b9e3d35 100644 --- a/xml/System/FlagsAttribute.xml +++ b/xml/System/FlagsAttribute.xml @@ -111,7 +111,8 @@ method to display the types of service provided to each household. + +The following example defines a `PhoneService` enumeration that represents forms of communication provided by a telephone company. It initializes three variables representing the service provided to three different households, and then indicates which households have no service, which households have only cell phone service, and which households have both cell phone and land line service. Finally, it implicitly calls the method to display the types of service provided to each household. :::code language="csharp" source="~/snippets/csharp/System/FlagsAttribute/Overview/flags1.cs" id="Snippet2"::: :::code language="fsharp" source="~/snippets/fsharp/System/FlagsAttribute/Overview/flags1.fs" id="Snippet2":::