Я совершенно новой для WPF так Heres мой код:Bind Список <object> для DataGrid WPF, C#
<DataGrid x:Name="dgVarConfig" ItemsSource="{Binding varConfigList, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Left" Margin="10,59,0,0" VerticalAlignment="Top" Height="403" Width="1278" AutoGenerateColumns="False" CanUserAddRows="False" CanUserDeleteRows="False" CanUserResizeRows="False" HeadersVisibility="Column">
<DataGrid.Columns>
<DataGridTextColumn Width="auto" Header="Match Ausdruck" Binding="{Binding match_expression}"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
My Files: MainWindow.xaml, MainController.cs, VarConfigDAO.cs
varConfigDAO .cs возвращает список в MainController, а MainController.cs возвращает его mainWindows.xaml.
Это VarConfig.cs:
public class VarConfig
{
public int id { get; set; }
public String group { get; set; }
public String machine { get; set; }
public String match_expression { get; set; }
public String variant_new_1 { get; set; }
public String calc_formula_1 { get; set; }
public String variant_new_2 { get; set; }
public String calc_formula_2 { get; set; }
}
Это работает, если я установить ItemsSource programmaticly:
dgVarConfig.Itemssource = mainController.loadVarConfigList();
Но это еще не то, что я хочу, потому что я хочу, чтобы обновить список с помощью сетки (вставить, удалить, обновить строки => Режим = TwoWay)
Любой ключ, как я могу заполнить itemssource через xaml?
Я сделал это таким образом. теперь набор данных заполнен. но в чем преимущества? если список меняется, мне нужно перезагрузить datacontext? Я действительно не понимаю. и как я могу заполнить VarConfigList, если это частный набор? –
Вам не нужно перезагружать DataContext, если список изменяется. Когда элементы добавляются или удаляются из списка, это будет сообщено ObservableCollection. Если вы хотите создать новый экземпляр List, класс ViewModel должен также реализовать INotifyPropertyChanged и сообщить об этом свойстве 'VarConfigList'. Найдите в Интернете «MVVM». Это архитектурный образец для создания пользовательского интерфейса, который отлично поддерживается WPF. – Clemens
и как я могу заполнить VarConfigList, если это частный набор? –