2011-08-08 28 views
7

Próbuję wyłączyć pole wyboru, ale pojawia się błąd i nie mogę określić, co robię źle. Mój kod jest taki, że powinien zadziałać, o ile mogę powiedzieć, sądząc po innych wyjaśnieniach, jak wyłączyć pole wyboru. Jednak otrzymuję ten błąd:Wyłączanie pola wyboru w mvc3

CS1928: 'System.Web.Mvc.HtmlHelper' does not contain a definition for 'CheckBox' and the best extension method overload 'System.Web.Mvc.Html.InputExtensions.CheckBox(System.Web.Mvc.HtmlHelper, string, bool, object)' has some invalid arguments

Jakieś pomysły? Dziękuję Ci.

Odpowiedz

10

Program pomocniczy CheckBox oczekuje wartości logicznej jako drugiego parametru. Spróbuj tak:

@Html.CheckBox(
    "", 
    bool.Parse((string)ViewData.TemplateInfo.FormattedModelValue), 
    new { disabled = "disabled" } 
) 

lub jeśli jest to silnie wpisane edytor szablonu boolean:

@model bool 
@Html.CheckBox("", Model, new { disabled = "disabled" }) 
+0

Ach, dziękuję. Rozumiem, co się teraz dzieje. Analizowanie FormattedModelValue jako bool nie działało, ponieważ było to już boolem, ale rzucało go jako (bool) ViewData.TemplateInfo.FormattedModelValue. Jeszcze raz dziękuję za pomoc – stacy