如何在ASP.NET MVC中使用ViewBag中的数据填充DropDownList?

时间:2019-05-16 07:52:36

标签: c# asp.net model-view-controller data-binding webgrid

我在使用ViewBag数据在Webgrid中创建DropDownList时遇到问题。我正在通过ViewBag传递以下数据:

enter image description here

我正在传递JsonModel类型的3个对象,其中包含2个属性KeyA和KeyOther。我要显示到DropDownList中的数据是我的3个对象的KeyOther值。

我现在所拥有的:

@{
                if (Model != null && Model.Count() > 0)
                {
                    var grid = new WebGrid(canPage: true, rowsPerPage: 10);
                    grid.Bind(source: Model, rowCount: 0, autoSortAndPage: false);

                    <div class="row" id="content2">
                        <div class="col-lg-12 d-flex align-items-stretch">

                            @grid.Table(tableStyle: "table table-responsive table-striped table-bordered",
                                columns: grid.Columns(
                                grid.Column(columnName: "KeyA", header: "KeysA", format:@<text><div class="" data-id="@item.KeyA" data-propertyname="KeyA">@item.KeyA</div></text>),
                                    grid.Column("Priority", format: @<text>@Html.DropDownListFor(x => x.First().KeyOther, new SelectList(ViewBag.OtherKeysList))</text>)
                                    ))
                        </div>
                        <!--Pagerlist for webgrid-->
                        <div class="col-lg-12 d-flex align-items-stretch">
                            @grid.PagerList(mode: WebGridPagerModes.All, paginationStyle: "pagination pagination-small pagination-right")
                        </div>

                        @Html.Hidden("dir", grid.SortDirection)
                        @Html.Hidden("col", grid.SortColumn)
                    </div>
                }
            }

产生以下结果:

enter image description here

希望有人可以提供帮助!

谢谢!

0 个答案:

没有答案