Как сделать видимость в соответствии с процессом выбора mvvm? - PullRequest
0 голосов
/ 17 марта 2019

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

  1. Я хочу выбрать класс, используя 1 комбинированный список. (Я набрал значение в поле со списком, и я могу выбрать.)
  2. Combobax Когда я выбираю 1 или 2 элемента, я хочу, чтобы выпадающий список и метки studentID располагались внизу той же страницы. Я хочу, чтобы он появился, если я решу не появляться. Но как я могу тебе помочь с этим?

Я хочу Если выбрано значение элемента комбинированного списка, я хочу, чтобы поля ниже отображались на той же странице.

ViewModel.cs

class ViewModel
    {
        Model modeltype = new Model();
        public Model ModelType
        {
            get { return modeltype; }

            set { modeltype = value; OnPropertyChanged("ModelType"); }
        }

        private List<string> selectedStudentID;
        private List<string> selectedStudentName;

        public List<string> SelectedStudentID
        {
            get { return selectedStudentID; }
            set { selectedStudentID = value; OnPropertyChanged("SelectedStudentID"); }

        }

        public List<string> SelectedStudentName
        {
            get { return selectedStudentName; }
            set { selectedStudentName = value; OnPropertyChanged("SelectedStudentName"); }

        }

        private void OnPropertyChanged(string v)
        {

        }
    }

xmal.cs

 <StackPanel HorizontalAlignment="Left" Height="419" VerticalAlignment="Top" Width="772" Margin="10,0,0,0"/>
        <Label x:Name="label" Content="Select Class" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="346,52,0,0" Width="155"/>
        <ComboBox x:Name="comboBox"   SelectedItem="{Binding SelectedClass}" HorizontalAlignment="Left" VerticalAlignment="Top" Width="185" Margin="300,83,0,0"/>
        <Label x:Name="label1" Content="StudentID" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="84,132,0,0" Height="30" Width="106"/>
        <ComboBox x:Name="comboBox1" SelectedItem="{Binding SelectedStudentID}"   HorizontalAlignment="Left" VerticalAlignment="Top" Width="120" Margin="56,167,0,0"/>
        <Label x:Name="label2" Content="StudentName"  HorizontalAlignment="Left" VerticalAlignment="Top" Margin="273,132,0,0" Height="80" Width="106"/>
        <ComboBox x:Name="comboBox2" SelectedItem="{Binding SelectedStudentName}"  HorizontalAlignment="Left" VerticalAlignment="Top" Width="120" Margin="259,167,0,0"/>

Model.cs

 class Model
        {
            public List<string> selectClass()
            {
                List<string> item = new List<string>();
                item.Add("FirstClass");
                item.Add("Second Class");
                return item;
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...