2013-04-21 3 views
3

Привет Я развиваю банковскую систему для школьного задания. Вы можете пройти 2 Названия в DROPDOWNLIST ех:MVC DropDownListДля получения 2 имен

Это модель

public TransferModel(int bankId, int userid) 
{ 
    myAccount = new Service1Client().getAccountByID(bankId); 
    AccountList = new SelectList(new Service1Client().RetrieveAllAccountsByAccountId(userid), "Id", "Name"); 
} 

Я устанавливаю Id, Name в Select List

Вид:

<div class="editor-field"> 
    Withdraw From: <%: Html.DropDownListFor(model => model.myAccount.Id, Model.AccountList)%> 
</div> 

Выбрать в списке будет отображаться только имя аккаунта. это их возможность отображать имя и баланс в выпадающем списке.

Благодаря

+0

Возможный дубликат. Проверьте ответ здесь: http://stackoverflow.com/questions/4868627/display-two-properties-in-the-dropdownlist – LouD

ответ

2

что-то вроде следующего было бы довольно аккуратный способ обработки:

public class AccountModel 
{ 
    public string Id { get; set; } 
    public string Name { get; set; } 
    public Decimal Balance { get; set; } 

    public string AccountSummary 
    { 
     get 
     { 
      return String.Format("{0} ({1:C})", Name, Balance); 
     } 
    } 
} 

public class TransferModel 
{ 
    public IList<AccountModel> Accounts { get; set; } 
    public string SelectedAccountId { get; set; } 
    /* Whatever other properties your view needs */ 
} 

Введите ваш взгляд TransferModel и сделать:

<%: Html.DropDownListFor(model => model.SelectedAccountId, 
    new SelectList { Model.Accounts, "Id", "AccountSummary")%>