Skip to content
This repository was archived by the owner on May 1, 2024. It is now read-only.

Commit 7835839

Browse files
authored
Add CallMemberPropertyName to OnPropertyChanged in view model
1 parent c71d563 commit 7835839

File tree

4 files changed

+16
-25
lines changed

4 files changed

+16
-25
lines changed

src/MvvmBlazor.Core/Internal/Parameters/ParameterCache.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ internal class ParameterCache : IParameterCache
1919

2020
public void Set(Type type, ParameterInfo info)
2121
{
22-
_cache[type] = info ?? throw new ArgumentNullException(nameof(info));
22+
ArgumentNullException.ThrowIfNull(info);
23+
_cache[type] = info;
2324
}
2425
}

src/MvvmBlazor.Core/Internal/WeakEventListener/WeakEventListener.cs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,11 @@ internal abstract class WeakEventListenerBase<T, TArgs> : IWeakEventListener whe
1515

1616
protected WeakEventListenerBase(T source, Action<T, TArgs> handler)
1717
{
18-
_source = new WeakReference<T>(source ?? throw new ArgumentNullException(nameof(source)));
19-
_handler = new WeakReference<Action<T, TArgs>>(handler ?? throw new ArgumentNullException(nameof(handler)));
18+
ArgumentNullException.ThrowIfNull(source);
19+
ArgumentNullException.ThrowIfNull(handler);
20+
21+
_source = new WeakReference<T>(source);
22+
_handler = new WeakReference<Action<T, TArgs>>(handler);
2023
}
2124

2225
public bool IsAlive => _handler.TryGetTarget(out _) && _source.TryGetTarget(out _);
@@ -81,12 +84,10 @@ public TypedWeakEventListener(
8184
Action<T, EventHandler<TArgs>> unregister,
8285
Action<T, TArgs> handler) : base(source, handler)
8386
{
84-
if (register == null)
85-
{
86-
throw new ArgumentNullException(nameof(register));
87-
}
87+
ArgumentNullException.ThrowIfNull(register);
88+
ArgumentNullException.ThrowIfNull(unregister);
8889

89-
_unregister = unregister ?? throw new ArgumentNullException(nameof(unregister));
90+
_unregister = unregister;
9091
register(source, HandleEvent!);
9192
}
9293

src/MvvmBlazor.Core/Internal/WeakEventListener/WeakEventManager.cs

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,7 @@ public class WeakEventManager : IWeakEventManager
4141
public void AddWeakEventListener<T, TArgs>(T source, string eventName, Action<T, TArgs> handler)
4242
where T : class where TArgs : EventArgs
4343
{
44-
if (source == null)
45-
{
46-
throw new ArgumentNullException(nameof(source));
47-
}
44+
ArgumentNullException.ThrowIfNull(source);
4845

4946
_listeners.Add(new WeakEventListener<T, TArgs>(source, eventName, handler), handler);
5047
}
@@ -55,10 +52,7 @@ public void AddWeakEventListener<T, TArgs>(T source, string eventName, Action<T,
5552
public void AddWeakEventListener<T>(T source, Action<T, PropertyChangedEventArgs> handler)
5653
where T : class, INotifyPropertyChanged
5754
{
58-
if (source == null)
59-
{
60-
throw new ArgumentNullException(nameof(source));
61-
}
55+
ArgumentNullException.ThrowIfNull(source);
6256

6357
_listeners.Add(new PropertyChangedWeakEventListener<T>(source, handler), handler);
6458
}
@@ -69,10 +63,7 @@ public void AddWeakEventListener<T>(T source, Action<T, PropertyChangedEventArgs
6963
public void AddWeakEventListener<T>(T source, Action<T, NotifyCollectionChangedEventArgs> handler)
7064
where T : class, INotifyCollectionChanged
7165
{
72-
if (source == null)
73-
{
74-
throw new ArgumentNullException(nameof(source));
75-
}
66+
ArgumentNullException.ThrowIfNull(source);
7667

7768
_listeners.Add(new CollectionChangedWeakEventListener<T>(source, handler), handler);
7869
}
@@ -82,10 +73,7 @@ public void AddWeakEventListener<T>(T source, Action<T, NotifyCollectionChangedE
8273
/// </summary>
8374
public void RemoveWeakEventListener<T>(T source) where T : class
8475
{
85-
if (source == null)
86-
{
87-
throw new ArgumentNullException(nameof(source));
88-
}
76+
ArgumentNullException.ThrowIfNull(source);
8977

9078
var toRemove = new List<IWeakEventListener>();
9179
foreach (var listener in _listeners.Keys)

src/MvvmBlazor.Core/ViewModel/ViewModelBase.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,9 @@ protected bool Set<T>(ref T field, T value, [CallerMemberName] string? propertyN
2626
return false;
2727
}
2828

29-
public virtual void OnPropertyChanged(string propertyName)
29+
public virtual void OnPropertyChanged([CallerMemberName] string? propertyName = null)
3030
{
31+
ArgumentNullException.ThrowIfNull(propertyName);
3132
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
3233
}
3334

0 commit comments

Comments
 (0)