我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Blazor组件事件处理功能

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Blazor组件事件处理功能

Blazor的组件当中, 提供了事件处理功能, 这点类似于使用客户端(Winform/Wpf)开发, 经常用到的一些类似: 按钮(Button), 输入框(TextBox) 用到的一些事件, 例如Click、DoubleClick、TextChanged 等等事件允许我们在后台代码当中进行处理相应的逻辑。

介绍事件

在Razor组件中, 同样提供了事件处理功能。对于具有委托类型值且名为 @on {EVENT}(例如 @onclick)的 HTML 元素特性,Razor 组件将该特性的值视为事件处理程序。

调用lamda表达式

下面的例子中:

Input输入框,添加了一个文本改变事件, 然后使用@前缀,添加了一个lamda的表达式,输出一段字符串 "Hello",

对于button而言,添加了一个 onclick事件。

    <input @onchange="@(()=>Console.WriteLine("Hello"))" />
    <button @onclick="@(()=>Console.WriteLine("Hello"))" />

使用code {} 方法

我们同样,可以在code代码块当中, 添加C#的方法, 然后在UI元素当中直接应用到我们的方法名即可。

例: 下面演示了一个button按钮的onclick事件绑定到c#的方法当中, 当点击按钮的事件, 将触发绑定的c#代码方法:

    <button @onclick="Show" />
    @code
{
    public void Show()
    {
       //当按钮被点击, 将执行下面代码
    }
}

异步的方法

事件处理同时也支持异步的方法, 返回Task

     public async Task Show()
    {
       //当按钮被点击, 将执行下面代码
    }

事件参数的方法

如果需要在方法当中处理UI当中的一些事件参数, 则可以通过方法添加事件参数即可, 如下所示:

@code{
    public async Task Show(MouseEventArgs  e)
    {
        //...
    }
}

事件参数列表

事件参数的方法(重载)

当同一个UI元素绑定了一个方法, 但是方法具备重载时, 需要我们在UI元素当中明确调用的方法, 否则编译器无法识别使用哪个方法。

<button @onclick="@(e=>Show(e))" />  //调用带事件参数的方法
<button @onclick="@(()=>Show())" />  //调用不带事件参数的方法
@code
{
    //不带事件参数的方法
    public void Show()
    {

    }

    //带事件参数的方法
    public void Show(MouseEventArgs e)
    {

    }
}

在默认的情况下, 我们如果只编写一个事件触发的方法, 并且明确它是否有参数, 在UI元素绑定方法上, 我们都无需传递参数。

    <button @onclick="@Show" />  
@code
{
    public void Show(MouseEventArgs e)
    {
         //当button按钮被点击, 会自动将事件参数传递给e
    }
}

到此这篇关于Blazor组件事件处理功能的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Blazor组件事件处理功能

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Blazor组件的事件处理功能怎么用

本文小编为大家详细介绍“Blazor组件的事件处理功能怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Blazor组件的事件处理功能怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Blazor的组件当中
2023-06-29

揭秘 JavaScript 事件处理的强大功能

JavaScript 事件处理是一种强大的工具,可让您创建动态、交互式的网页。通过利用事件处理,您可以响应用户界面事件,例如单击、鼠标悬停和键盘输入,从而使您的网页更加用户友好,提高用户体验。
揭秘 JavaScript 事件处理的强大功能
2024-02-22

如何利用Redis和Perl 6开发异步事件处理功能

如何利用Redis和Perl 6开发异步事件处理功能引言:随着互联网技术的不断发展和应用场景的不断增加,异步事件处理功能成为现代编程中不可或缺的一部分。而在异步事件处理中,Redis和Perl 6是两个强大的工具和语言,它们的结合能够为我们
2023-10-22

Android应用事件处理

一. 实验目的 1.掌握内部类作为事件监听器的事件处理 2.掌握外部类作为事件监听器的事件处理 3.掌握基于回调的事件处理 二. 实验内容 1.内部类作为事件监听器。设计一个APP,界面包含一个EditText和一个Button。用户点击按
2022-06-06

Android事件分发机制(下) View的事件处理

综述在上篇文章Android中的事件分发机制(上)——ViewGroup的事件分发中,对ViewGroup的事件分发进行了详细的分析。在文章的最后ViewGroup的dispatchTouchEvent方法调用dispatchTransfo
2022-06-06

怎么处理WinForm中的控件事件

在WinForm中处理控件事件通常需要以下步骤:打开窗体设计器,选择要处理事件的控件,例如按钮、文本框等。双击控件,会自动创建一个事件处理方法,并打开代码视图。在事件处理方法中编写处理事件的代码,例如处理按钮点击事件时可以编写相应的逻辑
怎么处理WinForm中的控件事件
2024-04-08

vue3 证件识别上传组件封装功能

证件图片识别上传根据业务需要,经常涉及到证件上传,例如身份证上传、银行卡、营业执照等信息,根据设计师的设计,单独封装了一个上传组件,这篇文章主要介绍了vue3 证件识别上传组件封装,需要的朋友可以参考下
2023-05-19

使用fileupload组件实现文件上传功能

使用fileupload组件实现文件上传功能可以按照以下步骤进行:1. 导入相关文件和库:首先,需要导入jQuery库和fileupload插件的相关文件。```html```2. 创建HTML元素:创建一个文件上传的表单,并添加一个fil
2023-08-14

如何理解Vue中的事件处理和事件修饰符

这篇文章将为大家详细讲解有关如何理解Vue中的事件处理和事件修饰符,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

{{name}},加油

2023-06-25

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录