how to put checkboxes in datagrid in windows mobile 6 using c#?

前端 未结 2 561
无人及你
无人及你 2020-12-03 09:20

how to put checkboxes in datagrid in windows mobile 6 using c#?

dataset dsAgent=table; DataTable dataTable = dsAgent.Tables[0];

            DataGrid         


        
2条回答
  •  爱一瞬间的悲伤
    2020-12-03 09:43

    For better checkbox UI look and feel, rather than big cross

    private void DrawCheckBox(Graphics g, Rectangle bounds, CheckState state)
            {
                int size;
                int boxTop;
    
                size = bounds.Size.Height < bounds.Size.Width ? bounds.Size.Height : bounds.Size.Width;
                size = size > ((int)g.DpiX / 7) ? ((int)g.DpiX / 7) : size;
    
                boxTop = bounds.Y + (bounds.Height - size) / 2;
                size = 12; // 13, so I made it 12
                boxTop = boxTop - 1;
                using (Pen p = new Pen(this.Owner.ForeColor))
                {
                    g.DrawRectangle(p, bounds.X, boxTop, size, size);
                }
    
                if (state != CheckState.Unchecked)
                {
                    using (Pen p = new Pen(state == CheckState.Indeterminate ? SystemColors.GrayText : SystemColors.ControlText))
                    {
                        p.Width = 2;
                        int offset = 2;
                        int edgeOffset = 2;
                        g.DrawLine(p, bounds.X + offset, boxTop + offset + 2, bounds.X + (size / 2) - edgeOffset, boxTop + (size / 2) + edgeOffset);
                        g.DrawLine(p, bounds.X + (size / 2) - edgeOffset, boxTop + (size / 2) + edgeOffset, bounds.X + size - offset, boxTop + offset);
                    }
                }
            }
    

提交回复
热议问题