Как привязать базу данных SQL CE к элементу управления DataGrid? - PullRequest
0 голосов
/ 04 мая 2011

У меня есть база данных SQL CE, для которой я хочу отобразить свои данные в DataGrid .Я мог бы сделать запрос SQL, а затем сделать цикл из Items.Add к DataGrid .Но мне интересно, возможно ли связать базу данных SQL CE с DataGrid напрямую, без обновления через цикл или с помощью DataReader.

Например, если в базу данных добавлены новые строки,DataGrid отобразит его автоматически, и я не обновлю его вручную (например, кнопку с запросом SQL).

Я попытался выполнить следующий подход, но он не сработал:

dataGrid1.ItemsSource = connString.Database;

Любойпредложение?(Кстати, я создаю все свои элементы управления во время выполнения, поэтому решение XAML отсутствует)

Ответы [ 2 ]

1 голос
/ 19 августа 2011

Вам необходимо привязать сетку к определенной таблице.

Что вы делаете, это заполняете набор данных через адаптер данных и затем привязываете сетку.

cmd = New SqlCeCommand("select * from testtable", conn)

If conn.State = ConnectionState.Closed Then conn.Open()

datAdapter = New SqlCeDataAdapter(cmd)
datSet = New DataSet

datAdapter.Fill(datSet, "myTable")

myBind = New BindingSource(datSet, "myTable")

Me.grid.DataSource = myBind
1 голос
/ 04 мая 2011

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

...