TeleC MVC Dropdownlist的MVC下拉列表

时间:2011-10-31 16:59:31

标签: asp.net-mvc-3 telerik-mvc

我正在尝试将以下asp dropdowlist转换为telerik mvc dropdownlist。 我正在使用SQL存储过程来填充列表。

<asp:DropDownList ID="userName" name="userName" runat="server" DataSourceID="SqlDataSource1"
        DataTextField="FullName" DataValueField="UserName">
    </asp:DropDownList>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:HHNConnectionString %>"
        SelectCommand="GetUserName" SelectCommandType="StoredProcedure"></asp:SqlDataSource>

提前致谢。

1 个答案:

答案 0 :(得分:0)

combobox是我想要的。您是否在询问如何使用Telerik控件重写控件?

好吧,首先,您不要使用MVC控件指定存储过程。你想要在你的viewmodel上传递它。无论您使用什么进行数据库连接,都将负责调用存储过程。

// Controller method
public ActionResult MyAction()
{
    // Pull user names from the database
    var users = _repository.FindAllUsers().Select(u => u.UserName);
    return View(users);
}

然后你的观点看起来像这样:

@model IEnumerable<string>

@(Html.Telerik().DropDownList()
    .Name("userName")
)

如果您有预先选择的用户名,那么您将需要创建一个实际的viewmodel类:

public MyViewModel
{
    public string UserName { get; set;}
    public IEnumerable<string> UserList { get; set; }
}

然后您可以使用@(Html.Telerik().DropDownListFor(m => m.UserName))方法。