2016-05-18 2 views
-2

Итак, у меня есть список, чтобы отображать несколько лет (с 2014 года по два года после текущего), и он отлично работает, но сейчас мне нужно установить параметр currentYear в качестве значения по умолчанию в раскрывающемся списке. Я пытаюсь с выбранным имуществом, но не повезло, может быть, я не реализую его правильно. Заранее спасибо.Как установить значение по умолчанию в раскрывающемся списке MVC .NET?

В моей ViewModel я это:

public int SelectedYear { get; set; } 

Вид:

List<SelectListItem> selectedYear = new List<SelectListItem>(); 
int currentYear = int.Parse(DateTime.Now.Year.ToString()); 
var minYear = 2014; 
var maxYear = currentYear + 2; 
for (var i = minYear; i <= maxYear; i++) 
{ 
    if (currentYear == i) 
    { 
     var year = new SelectListItem() 
     { 
      Text = i.ToString(), 
      Value = i.ToString(), 
      Selected = true 
     }; 
     selectedYear.Add(year); 
    } 
    else 
    { 
     var year = new SelectListItem() 
     { 
      Text = i.ToString(), 
      Value = i.ToString(), 
      Selected = false 
     }; 
     selectedYear.Add(year); 
    } 
} 

@Html.DropDownListFor(m => m.SelectedYear, selectedYear, new { @class = "inlined form-control", @style = "width:100%" }) 
@Html.ValidationMessageFor(m => m.SelectedYear, "", new { @class = "text-danger" }) 
+0

Вам нужно установить значение 'SelectedYear' для соответствия одному из параметров перед тем, как передать модель в представление. И ваш код может просто быть «IEnumerable selectedYear = new SelectList (Enumerable.Range (2014, 3));' –

ответ

-1

http://msdn.microsoft.com/en-us/library/system.web.mvc.selectlist(v=vs.98).aspx

в контроллере, когда вы делаете ваш список выбора вы можете дать ему значение по умолчанию, последним параметром является значение по умолчанию/выбранное значение

var y earList = новый SelectList (GetYears(), «Id», «Name», selectedDate/Year);

+0

Не знаете, почему OP это принял - это неправильно. Вы можете установить последний параметр на любое значение, которое хотите, и это не имеет значения - его игнорирует «HtmlHelper». При использовании 'DropDownListFor()' его значение свойства, связанное с ним, определяет, что выбрано (внутри метода создается новый 'IEnumerable

Смежные вопросы