2013-07-16 3 views
1

У меня есть лист Excel с датами, которые я хочу использовать datetimepicker с (требуется только дата). Я просто хочу нажать на datetimepicker, выбрать дату, и она должна показать мне информацию в моем представлении сетки данных. это мой код кнопки.Как получить datetimepicker для работы

У меня есть txt-бокс, который я пробовал, но не могу получить дату, теперь я установил поле datetimepicker, но не могу заставить его работать.

любая помощь по этому вопросу.

Вот мой основной код

Imports System.Data.OleDb 

Public Class Tapes_info 
Private dtGlobal As New DataTable 


Private Sub Tapes_info_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    dtGlobal.Clear() 
    Using cn As New OleDb.OleDbConnection 
     Dim Builder As New OleDbConnectionStringBuilder With {.DataSource = IO.Path.Combine(Application.StartupPath, "Backuptapes.xls"), .Provider = "Microsoft.ACE.OLEDB.12.0"} 
     Builder.Add("Extended Properties", "Excel 12.0; IMEX=1;HDR=No;") 
     cn.ConnectionString = Builder.ConnectionString 
     cn.Open() 
     Using cmd As OleDbCommand = New OleDbCommand With {.Connection = cn} 

      cmd.CommandText = "SELECT TOP 5130 F1 As Tapes, F2 As Containere, F3 as ContainerRef, F4 as DateOut FROM [Tapese$]" 
      Dim dr As System.Data.IDataReader = cmd.ExecuteReader 
      dtGlobal.Load(dr) 
      LstTape.DisplayMember = "Tapes" 
      LstTape.DataSource = dtGlobal 
      txtContainer.DataBindings.Add("Text", dtGlobal, "Containere") 
      txtContainerRef.DataBindings.Add("Text", dtGlobal, "ContainerRef") 
      txtDateOut.DataBindings.Add("Text", dtGlobal, "Dateout") 

     End Using 
    End Using 
End Sub 

Вот мой код кнопки, я хочу, чтобы отобразить любую дату, которую я хочу.

Private Sub BtnSearchDateOut_Click(ByVal sender As System.Object, ByVal e As  System.EventArgs) Handles BtnSearchDateOut.Click 

For i As Integer = 0 To dtGlobal.Rows.Count - 1 
    If IsDBNull(dtGlobal.Rows(i)("Dateout")) Then 
     dtGlobal.Rows(i)("Dateout") = "" 
    End If 
Next 

Dim query = From item In dtGlobal.AsEnumerable() Where item.Field(Of String)("Dateout").StartsWith(txtSearchDateOut.Text) Select item 
If query.Count > 0 Then 
    Dim newDT As DataTable = query.CopyToDataTable() 

    MsgBox(newDT.Rows.Count.ToString() & " Date out found.") 

    Dim frm As New Form() 
    Dim dgv As New DataGridView() 
    dgv.DataSource = newDT 
    dgv.Refresh() 
    frm.Controls.Add(dgv) 
    dgv.Dock = DockStyle.Fill 
    frm.Size = New Size(1400, 700) 
    frm.Show() 

Else 
    MsgBox("There is no Date for this found.") 'message 
End If 
+0

какой язык? –

+0

Программа, которую я использую, - vb.net 2010 – Hendrik

+0

, тогда вы должны пометить соответствующий язык. Позволь мне сделать это за тебя. вы не получите ответы в противном случае –

ответ

0

Я не знаю, как вы используете дату для фильтрации результатов, но вы хотите, чтобы начать получать дату из DateTimePicker; вот так: Dim dt As Date = Me.DateTimePicker1.Value Тогда вы можете использовать dt.date как вход для фильтрации.

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