Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Data binding из CSV с навигацией 
V
    Опции темы
Fish
  Дата 18.2.2008, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.6.2004

Репутация: нет
Всего: нет



Имеется файл CSV формата, с некоторыми данными. Необходимо вывести эти данные на форму с навигацией, т.е. двигаться по записям вперед-назад. Соединяюсь:
Код

Dim fromFile As String = "Test.csv"

                Dim ConStr As String

                ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\;Extended Properties=""Text;HDR=No;FMT=CSVDelimited"""
                Dim ExcelConnection As New System.Data.OleDb.OleDbConnection(ConStr)
                ExcelConnection.Open()
                Dim da As New System.Data.OleDb.OleDbDataAdapter("Select * FROM " & fromFile, ExcelConnection)

                Try
                    da.Fill(productInfo.Products)
                Catch ex As Exception
                    MsgBox(ex.Message, MsgBoxStyle.ApplicationModal)
                End Try


Далее, соединяю текстбокс с колонкой таблицы Products dataset-а productInfo:

Код

txtProductID.DataBindings.Add("Text", productInfo.Products, "Column2")


Но содержимое колонки не отображается в текстбоксе, в чем может быть проблема? Сколько не  smile
не получается. Пример сделан на базе "How- To Databinding with Navigation", только в нем коннект не с сиквелом, а с CSV файлом. 
PM MAIL   Вверх
informatik
Дата 18.2.2008, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 207
Регистрация: 4.11.2007

Репутация: 3
Всего: 6



Ну чтобы двигаться по записям (как я понял с помощью BindingNavigator, либо в ручную писать код), но по любому нужен BindingSource, с ним проще..


Попробуй создай BindingSource соединенный с productInfo.Products и вместо таблицы используй созданный BindingSource...


Код

    txtProductID.DataBindings.Add("Text", YourBindingSource, "Column2")


--------------------
namespace informatik
PM MAIL   Вверх
Fish
Дата 18.2.2008, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.6.2004

Репутация: нет
Всего: нет



И с bindingsource не работает.
PM MAIL   Вверх
Fish
Дата 6.3.2008, 08:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 66
Регистрация: 2.6.2004

Репутация: нет
Всего: нет



Вопрос закрыт. 
Кому интересно пишу ответ:
1. Загрузка CSV файла в датасет. 
Код

 Private Sub loadData()
        Dim objStreamReader As StreamReader
        Dim strLine As String
        'ofd  - OpenFileDialog
        objStreamReader = New StreamReader(ofd.FileName.ToString)

        strLine = objStreamReader.ReadToEnd
        strLine = strLine.Replace(Chr(10), "")

        row = strLine.Split(Chr(13))
        'pbc - ProgressBarControl
        pbc.Properties.Maximum = row.Length
        pbc.Position = 0
        Dim newRow As DataRow

        For i As Integer = 0 To row.Length - 1

            col = row(i).Split(",")

            newRow = ds.Tables(0).NewRow()
            For c As Integer = 0 To col.Length - 1
                newRow(c) = col(c)
            Next
            ds.Tables(0).Rows.Add(newRow)
            pbc.Position = i
        Next

    End Sub


2. Указываем в BindingSource для GridView1(Компонент DevExpress) наш датасет. GridView имеет навигационные кнопки по записям. Вот и всё. smile 

P.S.
Не забудьте:
Код

Imports System
Imports System.IO


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0460 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.