所以我有一个带有标题栏的MainLayout,我希望有一个参数允许页面将标题栏设置为它想要的任何内容。所以mainlayout通过@Body调用页面,我很困惑如何将数据通过body传递给mainlayout以更新标题栏。
任何帮助将不胜感激!
<div class="sidebar">
<NavMenu />
</div>
<div class="main">
<div class="top-row px-4">
<h3 bind="@TitleValue">@(TitleValue)</h3>
<a class="ml-md-auto">@ADService.LoggedUser().DisplayName (@*@(ADService.LoggedUser().IsMemberOf())*@Admin)</a>
</div>
<CascadingValue Value="@TitleValue" Name="TitleValue">
<div class="content px-4">
@Body
</div>
</CascadingValue>
</div>
<Footer />
@functions {
string TitleValue = "Inventory";
}
所以我想要做的是传递TitleValue,让页面根据发生的情况更新它,并使用新值更新标题栏。
如果这不是这样做的方式,或者我错过了什么,任何帮助都会很棒:)
我想以下,不是我的,可以帮助你:
创建一个保存数据的类。将其注册为单件服务。将其注入布局和页面。您应该添加一个通知机制,以通知所有组件数据类中的某些内容已更改。