@page "/" @{ int[] mainColumnWidths = { 100,100 }; int[] extrasColumnWidths = { 100, 500 }; } <MatAccordion> @foreach (var car in cars) { <MatExpansionPanel> <MatExpansionPanelSummary> <table> <thead> <tr> <th style="width:@mainColumnWidths[0];">Name</th> <th style="width:@mainColumnWidths[0];">Price</th> </tr> </thead> <tbody> <tr> <td>@car.Name</td> <td>£ @car.Price</td> </tr> </tbody> </table> </MatExpansionPanelSummary> <MatExpansionPanelDetails> <table> <thead> <tr> <th style="width:@extrasColumnWidths[0];">Horse Power</th> <th style="width:@extrasColumnWidths[1];">Piccy</th> </tr> </thead> <tbody> <tr> <td>@car.extras.HorsePower Hp</td> <td> <img src="@car.extras.prettyPiccyUrl" style="width:@extrasColumnWidths[1]" /> </td> </tr> </tbody> </table> </MatExpansionPanelDetails> </MatExpansionPanel> } </MatAccordion> @code { bool panelOpenState = false; class car { public string Name; public decimal Price; public moreCarDetails extras; } class moreCarDetails { public int HorsePower; public string prettyPiccyUrl; } car[] cars = new car[] { new car { Name="hotrod", Price = 12345.67M, extras = new moreCarDetails{ HorsePower = 500, prettyPiccyUrl="https://th.bing.com/th/id/OIP.xkNgqs-pQVQzThVt6bJv5AHaE8?pid=ImgDet&rs=1" } }, new car { Name="automan's car", Price= 66666.66M, extras = new moreCarDetails{ HorsePower = 6666, prettyPiccyUrl = "https://th.bing.com/th/id/OIP.1tj3C-2QIDn60tN5VQBXSAHaDv?pid=ImgDet&rs=1" } } }; }
namespace BlazorFiddleProject { using Microsoft.AspNetCore.Components.Builder; using Microsoft.Extensions.DependencyInjection; public class Startup { public void ConfigureServices(IServiceCollection services) { } public void Configure(IComponentsApplicationBuilder app) { app.AddComponent<App>("app"); } } }
<!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <meta name="viewport" content="width=device-width"> <title>BlazorFiddleProject</title> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> <script src="_content/MatBlazor/dist/matBlazor.js"></script> <style> app { } </style> <script type="text/javascript"> </script> </head> <body> <app>Loading...</app> <script src="_framework/blazor.webassembly.js"></script> <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script> </body> </html>

Add component

BlazorFiddle was updated from Blazor 0.7 to .NET 6.0. Your old source code could not work. You need to upgrade to latest.