如何使用 EditTemplate 绑定到 Blazorise DataGrid 中的 TextEdit
How to bind to a TextEdit in Blazorise DataGrid using EditTemplate
我是 Blazor 和 Blazorise 的新手...在研究这个组件时,我似乎找不到任何 material 教授如何在 Blazorise DataGrid 的 EditTemplate 内的 TextEdit 中绑定变量..
在我的 Blazorise DataGrid 中,我有一个 DataColumn(见下面的代码):
<DataGridColumn
Caption="Description"
Editable="true"
TItem="ProductVo"
Field="@nameof(ProductVo.Description)">
<DisplayTemplate>
@($"{(context as ProductVo)?.Description}")
</DisplayTemplate>
<EditTemplate>
<Validation UsePattern="true">
<TextEdit @bind-Text="context.CellValue" Text="@((string)context.CellValue)" Pattern="^.{3,200}$">
<Feedback>
<ValidationError>This field must be between 3 and 200 characters long.</ValidationError>
</Feedback>
</TextEdit>
</Validation>
</EditTemplate>
</DataGridColumn>
在我的<TextEdit>
中,我可以使用以下代码在编辑时显示值:
Text="@((string)context.CellValue)"
但它没有保存,因为我无法使用 @bind-Text="context.CellValue"
.
绑定 context.CellValue
请帮助我学习如何使用 Blazorise DataGrid,提前致谢!
您错过了 TextChanged
事件,负责更新 context
上的文本。
这应该有效:
<TextEdit Text="@((string)context.CellValue)" TextChanged="@(v => ( (CellEditContext)context ).CellValue = v)" Pattern="^.{3,200}$">
我是 Blazor 和 Blazorise 的新手...在研究这个组件时,我似乎找不到任何 material 教授如何在 Blazorise DataGrid 的 EditTemplate 内的 TextEdit 中绑定变量..
在我的 Blazorise DataGrid 中,我有一个 DataColumn(见下面的代码):
<DataGridColumn
Caption="Description"
Editable="true"
TItem="ProductVo"
Field="@nameof(ProductVo.Description)">
<DisplayTemplate>
@($"{(context as ProductVo)?.Description}")
</DisplayTemplate>
<EditTemplate>
<Validation UsePattern="true">
<TextEdit @bind-Text="context.CellValue" Text="@((string)context.CellValue)" Pattern="^.{3,200}$">
<Feedback>
<ValidationError>This field must be between 3 and 200 characters long.</ValidationError>
</Feedback>
</TextEdit>
</Validation>
</EditTemplate>
</DataGridColumn>
在我的<TextEdit>
中,我可以使用以下代码在编辑时显示值:
Text="@((string)context.CellValue)"
但它没有保存,因为我无法使用 @bind-Text="context.CellValue"
.
context.CellValue
请帮助我学习如何使用 Blazorise DataGrid,提前致谢!
您错过了 TextChanged
事件,负责更新 context
上的文本。
这应该有效:
<TextEdit Text="@((string)context.CellValue)" TextChanged="@(v => ( (CellEditContext)context ).CellValue = v)" Pattern="^.{3,200}$">