2013-02-05 38 views
0

我已經創建了一個包含一個DataGridView,我已經連接數據源形式,效果很好,如果我想看到每一個記錄,但我只希望它表現出某些人的看法,我發現一些代碼,人們要求的作品,但是當我運行該程序,我得到一個語法錯誤...過濾器的datagridview用文本框的VB

語法錯誤:在「數字」運營商缺少操作數。

SO已經幫了我很多,在過去,因爲我是新的節目,如果我可能會問你們可以再幫我一個?

Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) _ 
            Handles TextBox1.TextChanged 
    If TextBox1.TextLength > 0 Then 
     frmReportMenu.ProjectBindingSource.Filter = _ 
       String.Format("Register number Like '%" & TextBox1.Text) & "%'" 
    Else 
     frmReportMenu.ProjectBindingSource.Filter = String.Empty 
    End If 
End Sub 

我當用戶點擊一個形式出現一個文本框

+0

如果「註冊號碼」是一列,怎麼可能有一個空間?它不應該像'[註冊號]'嗎? – bonCodigo

+0

順便說一句:這正是我永遠不會在列名中允許空格的原因。 – Dave

回答

4

按鈕創建一個按鈕,我認爲列名是什麼給你的錯誤。按我的意見,

它不應該包含RegisterNumber之間的空間。如果它有一個空間,那麼你必須纏住列名像這樣:[Register number]

試試這個請: String.Format("[Register number] Like '%" & TextBox1.Text) & "%'"

+0

謝謝,不敢相信這是如此愚蠢 –

+1

':D'這不是愚蠢的,有時它確實發生了......快樂編碼:) – bonCodigo

+1

它有多少次是驚人的AHA!時刻發生。由於在公司我是誰安裝一些代碼說,當我終於想通了,我有最後一個問題接觸「黎明的光在大理石頭像。」 (大理石頭在新罕布什爾州) – Dave

0

的右括號應該在這裏:String.Format("Register number Like '%" & TextBox1.Text & "%'")

不在這裏:String.Format("Register number Like '%" & TextBox1.Text) & "%'"