【发布时间】:2021-06-14 15:47:11
【问题描述】:
我有一个组件,我在页面变量中设置了它的引用:
<BlazorWebFormsComponents.Button OnClick="@((args) => btnForms_Clicked(formsButton, args))" @ref="formsButton" Text="Forms Button" CssClass="btn btn-primary">
</BlazorWebFormsComponents.Button>
在事件处理程序中我设置了一个按钮属性(文本):
Button formsButton;
public void btnForms_Clicked(object sender, MouseEventArgs e)
{
if (sender is Button)
(sender as Button).Text = "Good Bye";
}
对于大多数 Button 属性,此代码无效,对于 BackColor 有效,但对于 Text 无效。 blazor 还创建了分配线,带有绿色下划线并说“不应在其组件之外设置组件参数“zzz”,那么为什么 Blazor 提供了 @Ref 而大多数引用的属性都无法设置?或者有没有办法让这个工作?
【问题讨论】:
-
我将对象转换为 Button,然后使用它的属性。
-
我发布了两段代码,一段用于标记,另一段用于后面的代码,我发布的第二个代码块是后面的代码。
标签: c# asp.net-core blazor blazor-server-side