Browse Source

Merge pull request #15858 from abpframework/7.1-pagelayout-enhancements

Blazor - PageLayout enhancements
pull/15861/head
liangshiwei 3 years ago
committed by GitHub
parent
commit
19f0437a21
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 9
      framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs
  2. 13
      framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageLayout.cs

9
framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageHeader.razor.cs

@ -33,7 +33,14 @@ public partial class PageHeader : ComponentBase
[Parameter] // TODO: Consider removing this property in future and use only PageLayout. [Parameter] // TODO: Consider removing this property in future and use only PageLayout.
public List<BreadcrumbItem> BreadcrumbItems { public List<BreadcrumbItem> BreadcrumbItems {
get => PageLayout.BreadcrumbItems.ToList(); get => PageLayout.BreadcrumbItems.ToList();
set => PageLayout.BreadcrumbItems = new ObservableCollection<BreadcrumbItem>(value); set
{
PageLayout.BreadcrumbItems.Clear();
foreach (var item in value)
{
PageLayout.BreadcrumbItems.Add(item);
}
}
} }
[Parameter] [Parameter]

13
framework/src/Volo.Abp.AspNetCore.Components.Web.Theming/Layout/PageLayout.cs

@ -23,20 +23,21 @@ public class PageLayout : IScopedDependency, INotifyPropertyChanged
private string menuItemName; private string menuItemName;
public string MenuItemName { public string MenuItemName {
get => menuItemName; get => menuItemName;
set { set
{
menuItemName = value; menuItemName = value;
OnPropertyChanged(); OnPropertyChanged();
} }
} }
public virtual ObservableCollection<BreadcrumbItem> BreadcrumbItems { get; set; } = new(); public virtual ObservableCollection<BreadcrumbItem> BreadcrumbItems { get; } = new();
public virtual ObservableCollection<PageToolbarItem> ToolbarItems { get; set; } = new(); public virtual ObservableCollection<PageToolbarItem> ToolbarItems { get; } = new();
public event PropertyChangedEventHandler PropertyChanged; public event PropertyChangedEventHandler PropertyChanged;
protected void OnPropertyChanged([CallerMemberName]string propertyName = null) protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
{ {
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
} }

Loading…
Cancel
Save