C# Syncfusion Blazor:网格列中的绑定下拉列表
我正在Blazor Core 3.1.0应用程序中使用Syncfusion网格。我通过Web API绑定数据。现在我想在其中一列中显示一个下拉列表 通过此URL: Api/Default/GetProjectsList 我得到需要绑定到下拉列表文本和值的键和值对 我使用了EjsDropDownList控件并将数据与列表绑定。但是,如何在网格中以列的形式显示此列表是我一直在努力解决的问题。尝试将其包含在标记中,但列表尚未成为网格的一部分 请帮忙 提前谢谢C# Syncfusion Blazor:网格列中的绑定下拉列表,c#,asp.net,core,blazor,syncfusion,C#,Asp.net,Core,Blazor,Syncfusion,我正在Blazor Core 3.1.0应用程序中使用Syncfusion网格。我通过Web API绑定数据。现在我想在其中一列中显示一个下拉列表 通过此URL: Api/Default/GetProjectsList 我得到需要绑定到下拉列表文本和值的键和值对 我使用了EjsDropDownList控件并将数据与列表绑定。但是,如何在网格中以列的形式显示此列表是我一直在努力解决的问题。尝试将其包含在标记中,但列表尚未成为网格的一部分 请帮忙 提前谢谢 <EjsGrid TValue="O
<EjsGrid TValue="Order" AllowPaging="true" Toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Cancel", "Update" })">
<EjsDataManager Url="/Api/Orders" Adaptor="Adaptors.WebApiAdaptor"></EjsDataManager>
<GridEditSettings AllowAdding="true" AllowDeleting="true" AllowEditing="true" Mode="EditMode.Normal"></GridEditSettings>
<GridColumns>
<GridColumn>
<EjsDropDownList TValue="string" Placeholder="Select a Project">
<EjsDataManager Url="/Api/Default/GetProjectsList" Adaptor="Adaptors.WebApiAdaptor" CrossDomain=true></EjsDataManager>
<DropDownListFieldSettings Text="Item1" Value="Item2"></DropDownListFieldSettings>
</EjsDropDownList>
</GridColumn>
<GridColumn Field=@nameof(Order.OrderId) DefaultValue="0" IsIdentity="true" IsPrimaryKey="true" HeaderText="ID" TextAlign="TextAlign.Right">
</GridColumn>
</GridColumns>
</EjsGrid>
使用网格的“列模板功能”。使用此选项,可以在网格列中显示与列表绑定的下拉列表。请参考下面的文档链接 文件: 请使用下面的代码
<EjsGrid TValue="Order" ModelType="@Model" AllowPaging="true" ...>
...
<GridColumns>
<GridColumn>
<Template>
<EjsDropDownList TValue="string" Placeholder="Select a Project">
<EjsDataManager Url="/Api/Default/GetProjectsList" Adaptor="Adaptors.WebApiAdaptor" CrossDomain=true></EjsDataManager>
<DropDownListFieldSettings Text="Item1" Value="Item2"></DropDownListFieldSettings>
</EjsDropDownList>
</Template>
</GridColumn>
...
</GridColumns>
</EjsGrid>
@code{
EjsButton accountButton;
public Order Model = new Order();
...
}
...
...
@代码{
EjsButton accountButton;
公共秩序模型=新秩序();
...
}
如果您想在网格中执行编辑时显示下拉列表,也可以。然后将列的“编辑类型”设置为“下拉编辑”,或者您也可以使用“编辑模板功能”。有关这方面的更多详情,请参阅以下文件
文件:
使用网格的列模板功能“。使用此选项,可以在网格列中显示与列表绑定的下拉列表。请参考下面的文档链接 文件: 请使用下面的代码
<EjsGrid TValue="Order" ModelType="@Model" AllowPaging="true" ...>
...
<GridColumns>
<GridColumn>
<Template>
<EjsDropDownList TValue="string" Placeholder="Select a Project">
<EjsDataManager Url="/Api/Default/GetProjectsList" Adaptor="Adaptors.WebApiAdaptor" CrossDomain=true></EjsDataManager>
<DropDownListFieldSettings Text="Item1" Value="Item2"></DropDownListFieldSettings>
</EjsDropDownList>
</Template>
</GridColumn>
...
</GridColumns>
</EjsGrid>
@code{
EjsButton accountButton;
public Order Model = new Order();
...
}
...
...
@代码{
EjsButton accountButton;
公共秩序模型=新秩序();
...
}
如果您想在网格中执行编辑时显示下拉列表,也可以。然后将列的“编辑类型”设置为“下拉编辑”,或者您也可以使用“编辑模板功能”。有关这方面的更多详情,请参阅以下文件
文件:
我无法理解模型将如何填充。您能给我一些指导吗?我按照这些说明操作,得到了以下错误:“组件'GridColumn'的子内容元素'Template'使用了与包含组件'AuthorizeView'的子内容元素'Authorized'相同的参数名('context')。请指定参数名,如:'以解决歧义(RZ9999)'我无法理解模型将如何填充。您能给我一些指导吗?我按照这些说明操作,得到了以下错误:“组件'GridColumn'的子内容元素'Template'使用了与包含组件'AuthorizeView'的子内容元素'Authorized'相同的参数名('context')。请指定参数名,如:'以解决歧义(RZ9999)'