在winforms datagrid中1。如何实现行交替变色2。如何加入链接(例如在 datagrid里放了订单表 ,想点击行中的任何列 可以弹出一个新的form ,放这个订单的---- 用户信息)3。如何批量删除datagrid里的信息(用了checkBox)

解决方案 »

  1.   

    交替色:
    在datagrid的属性可以设置的,
      

  2.   

    原来用过ComponetOne,好像都可以设置的
      

  3.   

    DataGridTableStyle ts1 = new DataGridTableStyle();
    dataGrid1.DataSource = aTable;

    // Specify the table from dataset (required step)
    ts1.MappingName = "A";
        
    // Set other properties (optional step)
    ts1.AlternatingBackColor = Color.LightBlue;
    //ts1.AllowSorting = false;
    ts1.BackColor = Color.Cyan;
    dataGrid1.TableStyles.Add(ts1);
    ts1.GridColumnStyles[0].Width = 200;
    ts1.DataGrid.Refresh();
      

  4.   

    你的第一個問題我給一個例子給你:datagrid 的樣式表(DataGridTableStyle)應用... 
    首先 我們先定一個 datatable 和 一個datarow  Private idtb_temp As New DataTable
      Private idrw_row As DataRow  private sub GetDataTable()
             idtb_temp.Columns.Add("prdodr_subodr_code")              '''定義datatable 的列名        idtb_temp.TableName = "SearchTable"
            Dim ldcl_header As Windows.Forms.DataGridTextBoxColumn
            Dim ldgts_styles As New Windows.Forms.DataGridTableStyle
            ldgts_styles.SelectionForeColor = System.Drawing.Color.Yellow   
             '''選中行的前景色,即字體顏色
            ldgts_styles.SelectionBackColor = System.Drawing.Color.Brown     '''選中行的背景色        ldgts_styles.ForeColor = System.Drawing.Color.Coral           
            ''' datagrid 中將要顯示的字的顏色
            ldgts_styles.AlternatingBackColor = System.Drawing.Color.Cyan   
             '''datagrid中奇數行所顯示的顏色
            ldgts_styles.BackColor = System.Drawing.Color.Cyan            
           '''datagrid中偶數行所顯示的顏色        ldgts_styles.AllowSorting = False                              
             '''些樣式表定義datagrid不允許自動排序..        ldgts_styles.MappingName = "SearchTable"        ldcl_header = New Windows.Forms.DataGridTextBoxColumn          
             '''實例化一個datagridtextboxcolumn
            ldcl_header.MappingName = "prdodr_subodr_code"         
            '''引用前面定義的 “列名”
            ldcl_header.HeaderText = "第一列"                                                
           '''datagrid 中顯示的 表列頭 文字
            ldcl_header.ReadOnly = True            '''些列設定為只讀
            ldcl_header.TextBox.BorderStyle = BorderStyle.Fixed3D
            ldcl_header.TextBox.ForeColor = System.Drawing.Color.Red        ldgts_styles.GridColumnStyles.Add(ldcl_header)        For i As Integer = 0 To 7
                idrw_row = idtb_temp.NewRow
                idrw_row.Item("prdodr_subodr_code") = "第" & i & "行"
                idtb_temp.Rows.Add(idrw_row)        Next        idtb_temp.DefaultView.AllowNew = False
            Me.DataGrid1.TableStyles.Add(ldgts_styles)
            Me.DataGrid1.DataSource = idtb_temp
      end sub 
    第三問題:看我的blog 
    在datagrid 中使用Checkbox, ComboBxo 和 datetimepicker http://blog.csdn.net/zwxrain/archive/2005/01/19/258998.aspx
      

  5.   

    你的第二個問題 可以設定在cell 的事件,在Cell的事件中進行處理彈出from ....
      

  6.   

    1.在为DataGrid设置了数据源DataSource后,可添加DataGridTableStyle,然后设置其AlternatingBackColor属性和BackColor属性就是交替行的颜色了
      

  7.   

    1.在为DataGrid设置了数据源DataSource后,可添加DataGridTableStyle,然后设置其AlternatingBackColor属性和BackColor属性就是交替行的颜色了正解