Skip to content

Commit

Permalink
Fix issue where some read-only DPs were read/write
Browse files Browse the repository at this point in the history
  • Loading branch information
Kinnara committed May 13, 2020
1 parent c8e4f97 commit 2d06655
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
4 changes: 2 additions & 2 deletions ModernWpf.Controls/NavigationView/NavigationView.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1108,7 +1108,7 @@ void CreateAndHookEventsToSettings(string settingsName)
}

// hook up SettingsItem
SetValue(SettingsItemProperty, settingsItem);
SetValue(SettingsItemPropertyKey, settingsItem);

if (shouldSelectSetting)
{
Expand Down Expand Up @@ -4429,7 +4429,7 @@ void SyncSettingsSelectionState()

void RaiseDisplayModeChanged(NavigationViewDisplayMode displayMode)
{
SetValue(DisplayModeProperty, displayMode);
SetValue(DisplayModePropertyKey, displayMode);
var eventArgs = new NavigationViewDisplayModeChangedEventArgs();
eventArgs.DisplayMode = displayMode;
DisplayModeChanged?.Invoke(this, eventArgs);
Expand Down
14 changes: 8 additions & 6 deletions ModernWpf.Controls/NavigationView/NavigationView.properties.cs
Original file line number Diff line number Diff line change
Expand Up @@ -149,17 +149,18 @@ private static void OnHeaderTemplatePropertyChanged(DependencyObject sender, Dep

#region DisplayMode

public static readonly DependencyProperty DisplayModeProperty =
DependencyProperty.Register(
private static readonly DependencyPropertyKey DisplayModePropertyKey =
DependencyProperty.RegisterReadOnly(
nameof(DisplayMode),
typeof(NavigationViewDisplayMode),
typeof(NavigationView),
new PropertyMetadata(NavigationViewDisplayMode.Minimal, OnDisplayModePropertyChanged));

public static readonly DependencyProperty DisplayModeProperty = DisplayModePropertyKey.DependencyProperty;

public NavigationViewDisplayMode DisplayMode
{
get => (NavigationViewDisplayMode)GetValue(DisplayModeProperty);
set => SetValue(DisplayModeProperty, value);
}

private static void OnDisplayModePropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs args)
Expand Down Expand Up @@ -381,17 +382,18 @@ private static void OnMenuItemsSourcePropertyChanged(DependencyObject sender, De

#region SettingsItem

public static readonly DependencyProperty SettingsItemProperty =
DependencyProperty.Register(
private static readonly DependencyPropertyKey SettingsItemPropertyKey =
DependencyProperty.RegisterReadOnly(
nameof(SettingsItem),
typeof(object),
typeof(NavigationView),
new PropertyMetadata(OnSettingsItemPropertyChanged));

public static readonly DependencyProperty SettingsItemProperty = SettingsItemPropertyKey.DependencyProperty;

public object SettingsItem
{
get => GetValue(SettingsItemProperty);
set => SetValue(SettingsItemProperty, value);
}

private static void OnSettingsItemPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs args)
Expand Down

0 comments on commit 2d06655

Please sign in to comment.