'Blazor Looping, Closures and Binding
I broke this down to a simple example of Looping through some stuff but breaking it out in levels. I'm instantiating a local copy in the inner loop but that doesn't seem to work. When you try and change a value in the input it changes them all to the counter variable.
Here's the code in Blazor Fiddle https://blazorfiddle.com/s/d02wswws
@for (var i = 0; i < levels; i++)
{
<div>Level @i</div>
@for (var j = 0; j < stuffPerLevel; j++)
{
int copy = allStuffCounter;
<input type="text" @bind="stuff[copy]" @bind:event="oninput" />
<div>@stuff[copy]</div>
if(allStuffCounter < stuffCounterLimit) allStuffCounter++;
}
}
@code
{
string[] stuff = {"some stuff 1", ... ,"some stuff 20"};
int allStuffCounter = 0;
int levels = 3;
int stuffPerLevel = 4;
int stuffCounterLimit = 11;
}
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
