タイトル | : DataGridViewの色付け |
記事No | : 8747 |
投稿日 | : 2009/02/25(Wed) 16:08 |
投稿者 | : タロ |
いつもお世話になっております。 DataGridViewで特定の条件の時のみ、行に色をつけております。 立ち上げ起動時の検索1回目はうまくいくのですが、2回目以降まったく色が付きません。 ご教授、願えないでしょうか。 環境:VB2005
Form1(検索画面) Private Sub Btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn1.Click Form2.Owner = Me '出力タイプを保持 Form2.ShowDialog(sSql) ←SQL文をなげる
Form2(検索結果表示画面)
Public Overloads Sub ShowDialog(ByVal sSql As String)
'トリガ作成時に使用する Dim sqlConn As SqlClient.SqlConnection
'DB接続 sqlConn = New SqlClient.SqlConnection(S_strSCon) sqlConn.Open()
Dim sqlSelect As New SqlClient.SqlCommand(sSql, sqlConn) Dim Adapter As New SqlClient.SqlDataAdapter(sqlSelect)
'データの読み込み Dim Table As New DataTable() Adapter.Fill(Table)
'データソースを設定してDataGridViewにデータを表示 Dim BindingSource1 As New BindingSource
BindingSource1.DataSource = Table DataGridView1.DataSource = BindingSource1
sqlConn.Close() sqlConn = Nothing
Me.ShowDialog()
End Sub
Private Sub F_List_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Dim i As Integer
'総行数をカウント For i = 0 To DataGridView1.RowCount - 1 'セルの内容と文字列を比べる If DataGridView1.Rows(i).Cells(7).Value <> "" Then '条件を満たせば行の色を変える If DataGridView1.Rows(i).Cells(7).Value < Now.AddMonths(3).ToString("yyyy/MM/dd") Then DataGridView1.Rows(i).DefaultCellStyle.BackColor = Color.Aqua End If End If Next
End Sub
|