Witam!
Męczę się z następującym problemem. Kontrolkę DataGrid mam spiętą z lokalną bazą danych poprzez adapter. Tabelka prawidłowo wyświetla dane z bazy. W przypadku zmian aktualizuje bazę korzystając z adaptera. Jednak gdy wprowadzam zmiany w DataGrid poprzez code-behing, to wygląda na to, że nie są przekazywane do adaptera. Przykład kodu:
public partial class Dzwiek_uc : UserControl
{
DB_HBDataSetTableAdapters.DzwiekTableAdapter adapter = new DB_HBDataSetTableAdapters.DzwiekTableAdapter();
DB_HBDataSet.DzwiekDataTable table = new DB_HBDataSet.DzwiekDataTable();
public Dzwiek_uc()
{
InitializeComponent();
time();
adapter.Fill(table);
Dzwiek_dg.ItemsSource = table.DefaultView;
Dzwiek_dg.Items.Refresh();
}
private void time()
{
var timeList = new List<string>();
timeList.Add("0:00:05");
timeList.Add("0:00:10");
timeList.Add("0:00:15");
timeList.Add("0:00:20");
timeList.Add("0:00:25");
timeList.Add("0:00:30");
timeList.Add("0:00:35");
timeList.Add("0:00:40");
timeList.Add("0:00:45");
timeList.Add("0:00:50");
timeList.Add("0:00:55");
timeList.Add("0:01:00");
Czas.ItemsSource = timeList;
}}
XAML: <DataGridComboBoxColumn x:Name="Czas" Header="Czas" SelectedValueBinding="{Binding Czas}"/>
W tym wypadku komórka prawidłowo wyświetla dane w ComboBox, ale po wybraniu wartości nie zapisuje jej w bazie danych.