Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > DataGrid


Автор: Feliastre 17.11.2004, 10:03
Я хочу отображать таблицу в DataGrid'е. Что я делаю?
На форму перетаскиваю коннекцию, адаптер и датасет. Всё OleDb.
Код

adapter.Fil(dataSet);

ДатаГрид связан с ДатаСетом, Датасет с адаптером, адаптер с коннекцией, коннекция с БД. Всё клёво. Но при выполнении программы выглядит это так. Сначало надо нажать на плюсик. Там открывается линк на табличку. Клкаем на линк и только после этого появляются сами данные таблицы. Полный сакс. Мне надо, чтобы безо всяких Этих плюсиков сразу появлялись данные таблицы...

Вобщем как всегда - "ХЕЛПЬ!!!"

Автор: Kurt 17.11.2004, 19:10
Угу. Полный сакс. Но я бы здорово удивился, если бы это было не так.
Ведь DataSet может содержать в себе БОЛЬШЕ одной таблицы. Откуда DataGrid должен понять, какую таблицу отображать?
Чтобы решить эту проблему, тебе нужно в св-во DataGrid1.DataSource указывать не просто какой-то DataSet, а конкретную таблицу.
Типа так:
Код

..
DataSet myDS;
..
dataGrid1.DataSource=myDS.Tables["myTable"];
//или так:
dataGrid1.DataSource=myDS.Tables[0];

Автор: Bratsman 18.11.2004, 20:27
smile

Автор: [Last]Wizard 19.11.2004, 15:50
Можно еще так:
Код

dataGrid1.DataSource = myDS;
dataGrid1.DataMember = "myTable1";

Тогда меняя свойство DataMember можно отображать таблицы из одного и того же ДатаСета.

Автор: Elene 5.12.2004, 05:03
Код

Function getEtudiants() As System.Data.DataSet
   Dim connectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0; Ole DB Services=-4; Data Source=AccessDataBase.mdb"
   Dim dbConnection As System.Data.IDbConnection = New System.Data.OleDb.OleDbConnection(connectionString)

   Dim queryString As String = "SELECT [notes].* FROM [notes]"
   Dim dbCommand As System.Data.IDbCommand = New System.Data.OleDb.OleDbCommand
   dbCommand.CommandText = queryString
   dbCommand.Connection = dbConnection

   Dim dataAdapter As System.Data.IDbDataAdapter = New System.Data.OleDb.OleDbDataAdapter
   dataAdapter.SelectCommand = dbCommand
   Dim dataSet As System.Data.DataSet = New System.Data.DataSet
   dataAdapter.Fill(dataSet)

   Return dataSet
End Function

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)