@page "/"
@using MatBlazor
<MatTable Items="@cars" class="mat-elevation-z5">
<MatTableHeader>
<th>Name</th>
<th>Price</th>
<th>Horsepower</th>
<th></th>
</MatTableHeader>
<MatTableRow>
<td>@context.Name</td>
<td>@String.Format("${0:f2}", @context.Price)</td>
<td>@context.Horsepower</td>
<td>
<MatButton OnClick="@OpenDialog" Raised="true">Pick one</MatButton>
</td>
</MatTableRow>
</MatTable>
<MatDialog @bind-IsOpen="@dialogIsOpen">
<MatDialogTitle>Hi</MatDialogTitle>
<MatDialogContent>
<p>What's your favorite animal?</p>
<MatTextField @bind-Value="@dialogAnimal"></MatTextField>
</MatDialogContent>
<MatDialogActions>
<MatButton OnClick="@(e => { dialogIsOpen = false; })">No Thanks</MatButton>
<MatButton OnClick="@OkClick">OK</MatButton>
</MatDialogActions>
</MatDialog>
@code {
bool dialogIsOpen = false;
string dialogAnimal = null;
string animal = null;
void OpenDialog()
{
dialogAnimal = null;
dialogIsOpen = true;
}
void OkClick()
{
animal = dialogAnimal;
dialogIsOpen = false;
}
public class Car
{
public string Name { get; set; }
public double Price { get; set; }
public int Horsepower { get; set; }
public Car(string name, double price, int horsepower)
{
Name = name;
Price = price;
Horsepower = horsepower;
}
}
Car[] cars = new[]
{
new Car("Volkswagen Golf", 10000, 220),
new Car("Volkswagen Passat", 11000, 240),
new Car("Volkswagen Polo", 12000, 110),
new Car("Ford Focus", 13000, 200),
new Car("Ford Fiesta", 14000, 160),
new Car("Ford Fusion", 15000, 260),
new Car("Ford Mondeo", 16000, 120),
};
}