none
如何讓某DataGridView的列 RRS feed

  • 問題

  • 我使用了 .selected = true 好像只是選取這個列,但是我要如何讓它的儲存格變藍藍的選取狀況?
    2011年9月6日 上午 03:28

解答

  • 用BindingSource做比較快

     Dim dt As DataTable
        Dim bd As New BindingSource
        Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
            dt = New DataTable
            dt.Columns.Add("Col")
            For i As Int32 = 0 To 9
                Dim nRow As DataRow = dt.NewRow
                nRow(0) = i
                dt.Rows.Add(nRow)
            Next
            bd.DataSource = dt
            DataGridView1.DataSource = bd
        End Sub
     
        Private Sub Button7_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button7.Click
            bd.Position = 3
        End Sub

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已標示為解答 小見光二 2011年9月7日 上午 12:39
    2011年9月6日 上午 04:33
    版主

所有回覆

  • 請參考,http://vb-helper.com/howto_2005_datagridview_color_row.html

    希望對您有幫助!

    ' Set the default style for the selected row.
    Private Sub DataGridView1_SelectionChanged(ByVal sender As _
        Object, ByVal e As System.EventArgs) Handles _
        DataGridView1.SelectionChanged
        If m_SelectedRow >= 0 Then
            DataGridView1.Rows(m_SelectedRow).DefaultCellStyle _
                = Nothing
        End If
    
        m_SelectedRow = DataGridView1.CurrentRow.Index
        DataGridView1.CurrentRow.DefaultCellStyle = _
            m_SelectedStyle
    End Sub

    亂馬客blog: http://www.dotblogs.com.tw/rainmaker/
    2011年9月6日 上午 03:37
  • 用BindingSource做比較快

     Dim dt As DataTable
        Dim bd As New BindingSource
        Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgsHandles MyBase.Load
            dt = New DataTable
            dt.Columns.Add("Col")
            For i As Int32 = 0 To 9
                Dim nRow As DataRow = dt.NewRow
                nRow(0) = i
                dt.Rows.Add(nRow)
            Next
            bd.DataSource = dt
            DataGridView1.DataSource = bd
        End Sub
     
        Private Sub Button7_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles Button7.Click
            bd.Position = 3
        End Sub

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。
    • 已標示為解答 小見光二 2011年9月7日 上午 12:39
    2011年9月6日 上午 04:33
    版主
  • 您好

    使用 .Selected = True 應該可以達成你的需求,我測試過會變成藍色

            DataGridView1.Rows(0).Cells(0).Selected = True
    

    你的 DataGridView 是否有特別設定一些屬性?

     


    歡迎參觀我的Blog.NET菜鳥自救會
    2011年9月6日 上午 05:23
    版主
  • 您可以參考這個範例:DataGridView Cell Coloring
    2011年9月6日 上午 09:07