我在winform中添加了两个datagridview 设置dock=fill 把他们最大化 
但是他们总是重叠 不会在一个层面上 我要它们不要相互挡到对方 大侠们 如何解决

解决方案 »

  1.   

    使用几个容器(例如panel),然后分别把他们放到容器中,设置dock属性为fill
      

  2.   

    可能两个都fill么?你也不仔细想想,两个都Fill你到底要它怎么弄?你能设计出来么?
      

  3.   

    用panel?panel不用fill?不是一样的
      

  4.   

    都要fill的话,就是说两者只可见其一,用属性visible=true(false)
      

  5.   

    大侠们 我是想让两个控件一左一右显示数据 
    dock都fill就相互重叠 用panl的话 窗体最大化之后panl不最大化 
    把dock设成一right一left的话 最大化的时候 中间留下一大片 不好看 
    我的目的就是要把他们挨一起 窗体最大化而最大化 
    大侠们有什么办法
      

  6.   

    Dock属性一个设为Left,一个设为Fill,这样设为Fill的那个就会自动随着窗体大小来变化尺寸了
      

  7.   

    用System.Windows.Forms.SplitContainer将窗口先分成两个,再各自里放datagridview.
      

  8.   

    或者使用一个SplitContainer控件,一个dategridview放在splitcontainer控件的左边,一个放在右边,都设置Dock为Fill
      

  9.   

    九楼十楼的方法可行 
    不使用SplitContainer 好像跟放下去的顺序有关 左边先还是这么弄 有人帮我弄居然行了 在弄一次 竟然不行 怎么回事 
      

  10.   

    就是跟放下去的顺序有关
    Dock属性跟子控件的索引值有关,好像后放下去的会优先吧
      

  11.   

    大侠们 在继承窗体的子窗口中 如何设置控件的最大化不要掩盖住从父窗体继承来的部分 
    datagridview最大化时候就会占满整个窗体 把从父类继承来的菜单栏一起覆盖住了 
    如何解决
      

  12.   

    父窗体中别设置Dock,都在子窗体中设置
      

  13.   

    用代码嘛在窗体的 大小改变事件里 private void form1_SizeChanged(object sender, EventArgs e)
            {
                dataGridView1.Bounds =new Rectangle(0,0,Width/2,Height);
                dataGridView2.Bounds = new Rectangle(dataGridView1.Right, 0, Width - dataGridView1.Width, Height);
            }
      

  14.   

    控件啊splitcontainer控件啊你的办法也可以的,现在窗体添加两个panel,在窗体的resize事件中手动调整panel的位置和大小来适应窗体的变化
    然后每个panel中的datagridview的dock=fill就可以了
      

  15.   

    这样的话跟不用panel直接调整datagridview有什么区别呢 最大化的时候 两个datagridview还是悬在那里啊  
    我是要窗体最大化 控件也跟着最大化 但不要遮盖到从父类继承来的工具栏 
    大侠们 有什么办法呢