2015-08-12 2 views
1

Я работаю над приложением WPF. Он имеет пару полей TextBox и DataGrid. Для создания базы данных SQLite (только с одной таблицей) я сделал это ...Получить данные DataGrid из представления SQLite

SQLiteCommand command = new SQLiteCommand(connection); 
command.CommandText = "CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,name VARCHAR(100)... 

и так далее ... Теперь запрос, чтобы создать вид является:

command.CommandText = "CREATE VIEW IF NOT EXISTS users_details AS SELECT name,adress... 

И так и снова. Это работает безупречно, но ... Я застрял в одной проблеме. Я хочу связать это представление «user_details» с моим DataGrid. Любое руководство или часть решения будет оценена ...

ответ

1

Вам нужно будет создать другую SQLiteCommand для извлечения данных из представления, а затем использовать его в качестве ItemsSource для DataGrid

SQLiteCommand command = new SQLiteCommand(connection); 
command.CommandText = "SELECT * FROM users_details" 

SQLiteDataAdapter da = new SQLiteDataAdapter(command); 
DataSet ds = new DataSet(); 
da.Fill(ds); 
DataTable dt = ds.Tables[0]; 
this.dataGrid.ItemsSource = dt.AsDataView(); 
+0

Это дает один error on last line ... Невозможно неявно преобразовать тип 'System.Data.DataTable' в 'System.Collections.IEnumerable'. Явное преобразование существует (вы пропускаете листинг?) – FiN

+0

Я изменил его на dt.AsDataView() –

+0

Хорошо ... нет ошибки, но ничего в сетке данных ... Вот мой XAML-код DataGrid ' ' – FiN

Смежные вопросы