У меня возникла небольшая проблема, с которой мне бы очень хотелось помочь.Динамически заданный текст и значение TextBoxFor
У меня есть объект User с идентификаторами свойств и NAME, которые мне нужно отображать в текстовом поле Readonly. Я хотел бы заполнить значение texbox значением ID и Text с именем.
Когда представлен FormCollection мне нужно получить введенные данные с:
collection.Get("User")
Я знаю, что это не правильный синтаксис, но я пытаюсь добиться следующего:
@Html.TextBoxFor(model => model.User, new { @readonly="readonly",@Value = model.Id , @Text=model.Name })
Что делать Мне нужно сделать, чтобы исправить это? В текстовом поле, как я могу отобразить имя пользователя, при отправке возвратить идентификатор пользователя с помощью collection.Get («Пользователь»)?
Заранее спасибо.
p.s. Стандартный
@Html.TextBoxFor(model => model.User.Name)
не работает для меня, как это не сохраняет значение и
@Html.TextBoxFor(model => model.User, new { @readonly="readonly",@Value = Model.User.Id})
не может по понятным причинам, когда User.Id пуст (в моем случае это возможно).
Yup, спасибо. Я знаю об этом. Поскольку мы в теме ... Знаете ли вы, есть ли элемент управления Display/Label, который получает привязку к модели при отправке? Как описано в OP, я показываю имя пользователя в текстовом поле readonly. Я действительно хочу, чтобы это был ярлык, но метки, похоже, не подчинены Formcollection. Или использовать ярлыки с более скрытыми полями для передачи данных? – Shenaniganz
См. Мой обновленный ответ. Afaik нет элемента управления Display/Label, который будет привязан к модели. – mfussenegger
Спасибо. Не так сексуально решение, на которое я надеялся, но он работает! – Shenaniganz