목록에 대한 반복을 채우는 blazor에 html 테이블이 있습니다 (관련 코드를 표시하기 위해 열이 축소됨)
@foreach (var line in lines)
{@{ var linenumber = lines.IndexOf(line)}
<td>
<DDItems @bind-Binder="line.item"></DDItems>
</td>
<td>
<button type="button" @onclick="@(() => removeRow(linenumber))">Remove</button>
</td>
}
@Code{
private List<TransactionSALine> lines = new List<TransactionSALine>();
private async Task removeRow(int linenumber)
{
lines = lines.Where(u => lines.IndexOf(u) != linenumber).ToList());
}
}
테이블에서 행 중 하나를 제거하면 다른 행에서 선택한 항목이 변경됩니다.
제품 "연필"이있는 행을 제거하기 전에 :
제품 "연필"을 제거한 후 :
스 니펫에 <tr>
요소 가 포함되어 있지 않습니다 . foreach () 내부의 첫 번째 수준에 있어야합니다. 키를 지정하여 렌더링을 도울 수 있습니다.
@foreach (var line in lines)
{
<tr @key="@line">
...
</tr>
}
사라지는 펜 아이템을이게 처리 해줄 것 같아요. 한번 시도해보세요.
참고로, 제거를 많이 단순화 할 수 있습니다.
@onclick="@(() => lines.Remove(line))">
// private async Task removeRow(int linenumber)
// {
// lines = lines.Where(u => lines.IndexOf(u) != linenumber).ToList());
// }
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다