2010-07-08 1 views
0

Я пользуюсь услугами SL4 и RIA. У меня есть простая таблица с тремя полями (Name, UpDatedByUserId, UpDatedOn). В моих метаданных я использую Data Annotation для двух последних полей, чтобы они не отображались. Мой DataGrid и связанный DataForm показывают каждую запись правильно и, по мере необходимости, DataForm показывает только поле Name, но, конечно, я хочу программно установить значения для других 2 полей (UpDatedByUserId и UpDatedOn). Есть ли способ установить эти значения в ViewModel?MVVM & DataForm - Как установить значения для не отображаемых полей

+0

Я вы делаете MVVM и с помощью привязки данных для всех элементов данных не должны эти поля уже существуют в вашей ViewModel? Я думаю, вам может потребоваться опубликовать образец кода, чтобы уточнить ваш вопрос ... – Scrappydog

ответ

0

В вашей ViewModel вы могли бы настроить ваше имя собственности следующим образом:

private string _UpdatedByUserId; 
private DateTime _UpdatedOn; 
private string _Name; 
public string Name 
{ 
    get { return _Name; } 
    set 
    { 
     if(value != _Name) 
     { 
     _UpdatedByUserId = WebContext.Current.User.Name; 
     _UpdatedOn = DateTime.Now; 
     _Name = value; 
     } 
    } 
} 
+0

Terry & Scrappydog, Спасибо за ваши ответы. Вы дали понять, что я пытаюсь решить проблему, которая на самом деле не была такой; даже если все поля находятся в ViewModel, я продолжал смотреть DataForm! еще раз спасибо – Jim