Mudblazor 对于类似 div 的标签有两个概念:MudElement和MudPaper。(它们与其他封闭元素不同,例如用于布局的aMudContainer或MudGrid/ 。)MudItem
许多示例几乎只使用其中之一,因此这似乎是个人选择。他们看起来和我很相似。
它们只是 a 的 blazor 表示吗<div>?我什么时候会使用其中之一?
如何将 MudAppBar 中的背景颜色更改为线性背景颜色 如何在 MudAppBar 中居中 MudText
<MudThemeProvider />
<MudDialogProvider />
<MudSnackbarProvider />
<MudLayout>
<MudAppBar Elevation="1">
<MudIconButton Icon="@Icons.Material.Filled.Menu" Color="Color.Inherit" Edge="Edge.Start" OnClick="@((e) => DrawerToggle())" />
<MudText Typo="Typo.h4" Class="ml-3">My Application</MudText>
<MudSpacer />
<MudIconButton Icon="@Icons.Material.Filled.MoreVert" Color="Color.Inherit" Edge="Edge.End" />
</MudAppBar>
<MudDrawer @bind-Open="_drawerOpen" ClipMode="DrawerClipMode.Docked" Elevation="2">
<NavMenu/>
</MudDrawer>
<MudMainContent>
<MudContainer MaxWidth="MaxWidth.ExtraLarge">
@Body
</MudContainer>
</MudMainContent>
</MudLayout>
@code {
bool _drawerOpen = true;
void DrawerToggle()
{
_drawerOpen = !_drawerOpen;
}
}
Run Code Online (Sandbox Code Playgroud)
如何将 MudAppBar 中的背景颜色更改为线性背景颜色 如何在 MudAppBar 中居中 MudText
我浏览到 abc.razor OnInitializedAsync() 方法被调用。
现在在 OnvalidSubmit 方法中我有以下代码
NavManager.NavigateTo("/abc?rid=1", false, true);
Run Code Online (Sandbox Code Playgroud)
这意味着它应该再次导航到 abc.razor 页面。它确实导航但不调用 OnInitializedAsync() 方法?
为什么这样?
我认为这个问题是不言自明的。
MAUI 是跨平台 UI 框架 Xamarin.Forms 的演变。
Blazor 是 MS 的新前端 C# 框架。
然而,MAUI Blazor,我不清楚。
我怀疑它是以下之一:
那么混合 maui/blazor 应用程序到底有什么用呢?他们可以让您做哪些仅使用 MAUI 或 Blazor 无法完成的事情?
我需要构建一个 ASP.NET Core 托管的 Blazor Web assembly 应用程序 (.NET 6),其中所有应用程序功能都隐藏在登录墙后面,但我不确定如何最好地实现这一点。对于身份验证/授权,我使用 ASP.NET Identity 和 IdentityServer。
到目前为止,我已经创建了一个名为的新 Razor 组件Login.razor,它仅包含一个触发内置身份验证过程的链接:
<a href="authentication/login">Log in</a>
Run Code Online (Sandbox Code Playgroud)
该组件具有该@page指令"/",因此它是用户访问应用程序时登陆的第一个“页面”。
这工作得很好,但是一旦用户成功登录,他们就会被重定向到返回 URL,作为 .NET 身份过程的一部分,在本例中,这是一个现在无用的登录页面。
我不想只替换身份页面中的返回 URL 并将用户重定向到另一个特定页面,因为我认为返回 URL 在向用户发送指向特定页面的链接的情况下非常有用。例如,如果我尝试在不先登录的情况下导航到 mywebsite.com/fetchdata 等受保护资源,它会触发 Blazor 附带的任何身份验证魔法,让用户登录,然后在用户登录后将其重定向到 /fetchdata成功地做到了。我想保留这个功能。
"/index"如果用户来自 Login.razor 组件,我需要做什么才能让服务器重定向到另一个页面(例如)?或者我只是以完全错误的方式处理这一切?非常感谢任何建议。
asp.net-identity asp.net-core blazor blazor-webassembly hosted-blazor-webassembly
Index.razor.cs:
我正在开发一个网格组件,它将显示一个项目列表:
<Grid Items="Transactions">
<GridHeader>
<GridColumn TItem="Transaction">ID</GridColumn>
<GridColumn TItem="Transaction">Date</GridColumn>
</GridHeader>
</Grid>
Run Code Online (Sandbox Code Playgroud)
然后在 Grid.razor.cs 和 GridColumn.razor.cs 中我使用 typeparam TItem。但似乎我需要将 TITem 作为每个网格列中的参数传递,我该如何实现对类似以下内容的支持:
<Grid Items="Transactions" TItem="Transaction">
<GridHeader>
<GridColumn>ID</GridColumn>
<GridColumn>Date</GridColumn>
</GridHeader>
</Grid>
Run Code Online (Sandbox Code Playgroud)
因此,TItem 会级联到所有子组件(无论它们嵌套的深度如何)
我查看了 CascadingTypeParam 但有关它的信息很少,所以我不确定如果它是上述解决方案,如何使用它。
我遇到这个问题已经有一段时间了,为了重现该错误,我创建了一个新的 Blazor 项目来向您显示所有文件。
这是我的index.razor文件:
@using BlazorApp1.Models.TestSuiteModel;
@inject BlazorApp1.Services.TestSuiteService TestSuiteServ;
@page "/"
<b>
@TestSuitesResult.count;
</b>
@code {
protected override async Task OnInitializedAsync()
{
this.GetTestSuites();
}
TestSuiteModel TestSuitesResult;
protected async Task GetTestSuites()
{
TestSuiteServ.url = "https://dev.azure.com/****/_apis/test/Plans/12/suites?api-version=5.0";
TestSuiteServ.PersonalAccessToken = "****";
TestSuitesResult = await TestSuiteServ.GetTestSuites();
await base.OnInitializedAsync();
}
}
Run Code Online (Sandbox Code Playgroud)
问题是@TestSuitesResult.count;始终为空并引发此错误:

下面是我的模型
namespace BlazorApp1.Models.TestSuiteModel
{
public class TestSuiteModel
{
public List<Value> value { get; set; }
public int count { get; set; }
}
// .. mode classes
}
Run Code Online (Sandbox Code Playgroud)
以下是我的服务
using …Run Code Online (Sandbox Code Playgroud) 请帮我。
我没有找到 MudCheckBox 的任何 CheckedChanged 示例。我得到的结果仅与输入控制相关。
<input type="checkbox" @onchange="HandleCheck" />
Run Code Online (Sandbox Code Playgroud)
我尝试了这些文档,但没有得到MudCheckBox的确切示例。我能够成功绑定到 IsCheckedTrue 属性。该复选框位于 MudTable 内。我想调用CheckedChanged事件。
<MudCheckBox @bind-Checked="@context.IsCheckedTrue" Color="Color.Secondary" CheckedIcon="@Icons.Material.Filled.RadioButtonChecked" UncheckedIcon="@Icons.Material.Filled.RadioButtonUnchecked"></MudCheckBox>
Run Code Online (Sandbox Code Playgroud) 单击覆盖层(对话框外部)时是否可以防止关闭 MudBlazor 对话框?或者在单击覆盖层时运行任务?
我正在关注本教程https://dotnet.microsoft.com/en-us/learn/aspnet/blazor-tutorial/run,它构建了一个非常基本的 Blazor 应用程序。但是该项目无法在 ASP.NET Core 8 上运行。您能否帮忙找出为什么<app>runtimeconfig.json在构建 Blazor 项目时没有生成该文件?这是必需的,因为否则该项目将无法运行。该项目已成功构建,但我无法运行它。
我得到的错误是:
WasmAppHost --use-staticwebassets --runtime-config runtimeconfig.json
错误:无法在 /bin/Debug/net8.0/ 找到运行时配置
我尝试GenerateRuntimeConfigDevFile在文件中将属性设置为 true,.csproj如下所述: https: //learn.microsoft.com/en-us/dotnet/core/runtime-config/
但仍然没有创建 json 文件。
我尝试使用此处找到的模式手动创建它: https: //gist.github.com/natemcmaster/0bdee16450f8ec1823f2c11af880ceeb,但我收到有关缺少 WasmHostProperties 的错误。wasm 应用程序必须有一些特定的东西。
我想出了这个:
{
"runtimeOptions": {
"tfm": "net8.0",
"frameworks": [
{
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
{
"name": "Microsoft.AspNetCore.App",
"version": "8.0.0"
}
],
"configProperties": {
"System.GC.Server": true,
"System.Reflection.NullabilityInfoContext.IsSupported": true,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
},
"wasmHostProperties": {
"webServerPort":"7238",
"perHostConfig": [
{
"name": "wasmAppHost",
"host-args": [
"--experimental-wasm-simd", …Run Code Online (Sandbox Code Playgroud)