Есть DataGrid и в его RowDetailsTemplate еще один DataGrid
<DataGrid
AutoGenerateColumns="False"
ItemsSource="{Binding VerstatOperators}"
SelectedItem="{Binding SelectedVerstatOperator}">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding FullName}" Header="ПИБ" />
</DataGrid.Columns>
<DataGrid.RowDetailsTemplate>
<DataTemplate>
<DataGrid
AutoGenerateColumns="False"
ItemsSource="{Binding Marks}"
SelectedItem="{Binding SelectedMark}">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Time}" Header="Время, мин" />
</DataGrid.Columns>
</DataGrid>
</DataTemplate>
</DataGrid.RowDetailsTemplate>
</DataGrid>
Его ViewModel
private IEnumerable<VerstatOperator> verstatOperators;
public IEnumerable<VerstatOperator> VerstatOperators
{
get { return verstatOperators; }
set
{
verstatOperators = value;
OnPropertyChanged("VerstatOperators");
}
}
private VerstatOperator selectedVerstatOperator;
public VerstatOperator SelectedVerstatOperator
{
get { return selectedVerstatOperator; }
set
{
selectedVerstatOperator = value;
try
{
Marks = db.Marks.Where(x =>
x.IdVerstatOperator == SelectedVerstatOperator.IdVerstatOperator).ToList();
}
catch { }
OnPropertyChanged("SelectedVerstatOperator");
}
}
private List<Mark> marks;
public List<Mark> Marks
{
get { return marks; }
set
{
marks = value;
OnPropertyChanged("Marks");
}
}
private Mark selectedMark;
public Mark SelectedMark
{
get { return selectedMark; }
set
{
selectedMark = value;
OnPropertyChanged("SelectedMark");
}
}
Все работает кроме SelectedMark, выбирая любую строку из грида в деталях он просто не содержит объекта и всегда остаеться null.
Я так понимаю из-за вложенности этот грид имеет какое-то ограничение, как все-таки отлавливать выбранный элемент по MVVM канону
Решил проблему таким способом
SelectedItem="{Binding Path=DataContext.SelectedMark, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Window}}}"
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Подскажите пожалуйста, как эту часть кода заменить, что бы список слов не вписывать ручками в коде, а записывались бы в список из файлаtxt
Доброго времени сутокДелаю лабораторную работу по программированию (вопрос не о методе решения) и возникла проблема с консолью
Как можно при помощи momentjs определить следующие 6 месяцев? Например, сегодня 12 месяц по счёту и я бы хотел на выходе получить массив: