Blazor.WebForm.Components
Blazor.Web
ASP.NET Web Forms System.web.ui.webcontrols ส่วนประกอบมีดโกนสำหรับ Blazor WebAssembly, Blazor Hybrid, Blazor Server
ตัวอย่าง: https://blazorwebformdemo.github.io/
@using System.Web.UI
@using System.Web.UI.WebControls
@page "/fetchdata-gridview"
@inherits ControlComponent
@inject HttpClient Http
<div>
<h1>Weather forecast (GridView)</h1>
<asp.Button Text="Load Data" OnClick="this.Button_Click"></asp.Button>
<hr />
<asp.Label @ref="this.label"></asp.Label>
<br />
<asp.GridView @ref="this.gridview" AutoGenerateColumns="false" CssClass="table" AllowPaging="true"
PageSize="2" OnPageIndexChanging="this.GridView_PageIndexChanging">
<Columns>
<asp.BoundField HeaderText="Date" DataField="Date" DataFormatString="{0:yyyy/M/d}"></asp.BoundField>
<asp.BoundField HeaderText="Temp. (C)" DataField="TemperatureC"></asp.BoundField>
<asp.BoundField HeaderText="Temp. (F)" DataField="TemperatureF"></asp.BoundField>
<asp.BoundField HeaderText="Summary" DataField="Summary"></asp.BoundField>
</Columns>
</asp.GridView>
</div>
@code {
private WeatherForecast[] forecasts;
private Label label;
private GridView gridview;
protected async void Button_Click(object sender, EventArgs e)
{
forecasts = await Http.GetFromJsonAsync<WeatherForecast[]>("sample-data/weather.json");
label.Text = DateTime.Now.ToString();
gridview.PageIndex = 0;
gridview.DataSource = forecasts;
gridview.DataBind();
this.RequestRefresh();
}
protected void GridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gridview.PageIndex = e.NewPageIndex;
gridview.DataBind();
}
public class WeatherForecast
{
public DateTime Date { get; set; }
public int TemperatureC { get; set; }
public string Summary { get; set; }
public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}
}| รายการหนังสือกระสุนปืน | รายการดรอปดาวน์ | imageMap | หลายมุมมอง | กล่องข้อความ |
| ปุ่ม | fileupload | ฉลาก | แผง | พ่อมด |
| ปฏิทิน | ฟีลล์ฟีลด์ | LinkButton | ผู้ถือครองตำแหน่ง | |
| ช่องทำเครื่องหมาย | การเชื่อมโยงหลายมิติ | กล่องรายการ | รัศมี | |
| รายการ checkbox | ภาพ | ตามตัวอักษร | RadiobuttonList | |
| Combobox | BUTTON | ทำให้เป็นภาษาท้องถิ่น | โต๊ะ | |
| ผู้เขียนข้อมูล | ListView |
| ผู้เก็บข้อมูล | ผู้เล่น |
| รายละเอียด View | |
| รูปแบบ | |
| Gridview | |
| ผู้เปรียบเทียบ | การตรวจสอบความถูกต้อง |
| ผู้กำหนดเอง | |
| เครื่องดื่ม | |
| RegularexpressionValidator | |
| ต้องการฟีลด์ฟิลด์ | |
เพิ่มบริการ circuithandler ลงใน program.cs
builder.Services.AddScoped<CircuitHandler, ScriptManagerCircuitHandler>(); using Microsoft.AspNetCore.Components.Server.Circuits;
using System.Web.Hosting;
namespace Server
{
public class ScriptManagerCircuitHandler : CircuitHandler
{
private readonly IServiceProvider _serviceProvider;
public ScriptManagerCircuitHandler(IServiceProvider serviceProvider)
{
_serviceProvider = serviceProvider;
}
public override Task OnCircuitOpenedAsync(Circuit circuit, CancellationToken cancellationToken)
{
ScriptManagerHost.AddScoped(_serviceProvider);
return base.OnCircuitOpenedAsync(circuit, cancellationToken);
}
public override Task OnCircuitClosedAsync(Circuit circuit, CancellationToken cancellationToken)
{
ScriptManagerHost.RemoveScoped(_serviceProvider);
return base.OnCircuitClosedAsync(circuit, cancellationToken);
}
}
}