public ImgChoiceAnswerViewModel(ImgChoiceQuestion question, SingleChoiceAnswer answer): base(question)
 {
     foreach (var choice in question.ChoiceList)
     {
         _choices.Add(new TextChoiceViewModelForAnswer((TextChoice) choice, answer, question.QuestionId));
     }
 }
        public ImgChoiceQuestionViewModel(ImgChoiceQuestion model): base(model)
        {
            _model = model;

            foreach (var choice in _model.ChoiceList)
            {
                if(choice is TextChoice)
                {
                    _choices.Add(new TextChoiceViewModel((TextChoice)choice));
                }
                //if (choice is NumberChoice)
                //{
                //    _choices.Add(new NumberChoiceViewModel((NumberChoice)choice));
                //}
                //if (choice is ImgChoice)
                //{
                //    _choices.Add(new TextChoiceViewModel((ImgChoice)choice));
                //}
            }

        }
        public CreateQuestionnaireViewModel()
        {
            _model = new Questionnaire {Questions = new ObservableCollection<Question>()};

            _service = new QuestionnaireAdministrativeServiceClient();
            _service.GetUserQuestionnaireCompleted += ProxyGetQuestionnaireCompleted;
            _service.OpenAsync();

            SaveQuestionnaire = new DelegateCommand(() =>
                                                        {
                                                            var user = Application.Current.Resources["user"] as string;
                                                            if (user != null)
                                                            {
                                                                _service.StoreQuestionnaireAsync(user, _model);
                                                            }
                                                        });
            AddTextQuestion = new DelegateCommand(() =>
                                                      {
                                                          _model.Questions.Add(new TextQuestion {QuestionId = Guid.NewGuid()});
                                                          Update();
                                                      });
            AddImgSingleChoiceQuestion = new DelegateCommand(() =>
            {
                var question = new ImgChoiceQuestion
                                   {
                                       QuestionId = Guid.NewGuid(),
                                       Img = null,
                                       ChoiceList = new ObservableCollection<Choice>()
                                   };
                for (var i = 0; i < _imgQuestionNumberOfSingleChoices; i++)
                {
                    question.ChoiceList.Add(new TextChoice {Index = i + 1});
                }
                _model.Questions.Add(question);
                Update();
            });
        }