首页 > 其他分享 >Blazor学习记录三

Blazor学习记录三

时间:2024-03-20 19:12:09浏览次数:27  
标签:自定义 记录 Text 代码 绑定 学习 参数 组件 Blazor

11.自定义组件与消费端变量之间实现双向绑定

这也实现了从子组件到父组件的状态传递。

1.定义一个数据类型为T的参数。
2.再定义一个 参数名+[Changed]为名称,EventCallback结构类型的参数。注意T类型要和第一步中的参数数据类型T相同。
3.定义一个被用于元素中的C#事件触发的事件方法OnChange,并在该事件方法中调用第2步中定义的结构类型参数中的InvokeAsync(Text)成员方法。
4.写出元素中C#事件代码并绑定第3步中的事件方法。

注意: 3、4两步也可以以在4中写出lambda表达式的形式合成一步

这样做之后,则在组件的消费者调用端会按约定在组件内出现一个 @bind-[1步中参数名] 的绑定参数。
5. 以 @bind-[参数名]="[消费者中变量名]" 将消费者变量与自定义组件的绑定参数相绑定即可。

代码如下:

  • 自定义组件代码:
<input type="text" value="@Text" @onchange="Onchange" />
@code
{
    [parameter]public string? Text {get;set;}
    [parameter]public EventCallback<string?> TextChanged {get;set;}
    Task Onchange(ChangeEventArgs e)
    {
        Text = e.Value?.ToString();
        TextChanged.InvokeAsync(Text);
        return Task.CompletedTask;
    }
}
  • 消费者代码或说调用者代码:
@page "/custom-bind"
<CustomComponent @bind-Text="ConsumerVariate" />
<h3>@ConsumerVariate<h3>
@code
{
    string? ConsumerVariate {get;set}
}

标签:自定义,记录,Text,代码,绑定,学习,参数,组件,Blazor
From: https://www.cnblogs.com/hrx521/p/18085882

相关文章

  • CCS5.5帮助文档Help学习
    技巧:纯英文文档,用微信扫一扫翻译。主要看以下三个,按下面顺序:C/C++DevelopmentUserGuide:新建一个项目并运行的demo界面流程,依据操作一遍。【建个小demo,从头到尾操作一遍。3h。】CodeComposerStudioHelp:界面图标认识,用到再查也行。【5分钟大概瞄一眼】C6000CompilerVers......
  • 【机器学习】科学库使用第2篇:机器学习概述,学习目标【附代码文档】
    机器学习(科学计算库)完整教程(附代码资料)主要内容讲述:机器学习(常用科学计算库的使用)基础定位、目标,机器学习概述定位,目标,学习目标,学习目标。机器学习概述,1.3人工智能主要分支学习目标,学习目标,1主要分支介绍,2小结。机器学习概述,1.5机器学习算法分类学习目标,学习目标,1监......
  • Vue学习笔记54--动画效果+过度效果
    动画效果示例一:Test.vue——主要代码文件<template><div><button@click="isShow=!isShow">显示.隐藏</button><!--方式一class=comeorgo--><!--<h2v-show="isShow"class="come">你......
  • 操作系统综合题之“采用记录型信号量机制实现进程INPUT、PROCESS和OUTPUT的同步算法(
    1.问题:系统中有有三个进程INPUT、PROCESS和OUTPUT,共用两个缓冲区BUF1和BUF2。假期设BUF1中最多可放10个数据,现已放入了2个数据;BUF2最多可放5个数据。INPUT进程负责不断将输入的原始数据推送入BUF1,PROCESS进程负责从BUF1中取出原始数据进行处理,并将处理后的结果数据送入到BUF2中,OUT......
  • 深度学习500问——Chapter03:深度学习基础(3)
    文章目录3.5BatchSize3.5.1为什么需要Batchsize3.5.2BatchSize值的选择3.5.3在合理范围内,增大BatchSize有何好处3.5.4盲目增大BatchSize有何坏处3.5.5调节BatchSize对训练效果影响到底如何3.6归一化3.6.1归一化含义3.6.2为什么要归一化3.6.3为什......
  • OSPF-1类Router LSA学习
    前面我们又复习了一遍OSPF概述,在OSPF建立关系后有几种交互报文,通过LSU类型报文包含LSA信息实现路由信息传递,常见了1、2、3、4、5、7类LSA,分别对应不同功能使用。这里先看下1类LSA-RouterLSA。一、LSA概述LSA,全称为LinkStateAdvertisement,即链路状态通告,是OSPF(OpenSho......
  • w10下安装mysql8.0及dbeaver24记录
    1、首先到官网或者下载网站,下载mysql8.0的安装包,本次是从第三方下载网站下载的msi安装包,直接点开安装就行2、安装完后,参考https://blog.csdn.net/Javachichi/article/details/1327585513、然后下载安装dbeaver,安装好后配置连接mysql,其中自动下载mysql驱动时可能会报错,提示maven......
  • 【嵌入式学习笔记】---- OLED屏幕工作原理
    1驱动芯片SSD1603简介1.1SSD1603芯片图SSD1603是一款点阵显示屏控制器,可嵌入在屏幕中,用于执行接收数据、显示存储、扫描刷新等任务驱动接口:128个SEG引脚和64个COM引脚,对应\(128\times64\)像素点阵显示屏内置显示存储器(GDDRAM):\(128\times64Bit(或128\times64Byte)SRAM\)......
  • 关于衍射光波导设计中的K阈(k-domain)分析的一些学习
     对于衍射光波导的设计来说,不能简单利用几何光的方法对光线的传播路径进行描述。因此可以基于K空间波矢的矢量运算来进行描述。 在阈值分析中,衍射光波导的光线传播遵循二个引导条件,分别为全内反射条件和引导模式条件。如图所示。             ......
  • 前端学习-vue学习008-生命周期和模板引用
    官方教程链接ref标签(模板引用)手动操作DOM,使用模板引用,就是指向模板中一个DOM元素的ref<pref="pElementRef">hello</p>要访问该引用,我们需要声明一个同名的ref:constpElementRef=ref(null)生命周期详见前端学习-vue视频学习010-生命周期<template><!--html-......