2009-08-10 124 views
3

我有一个splitContainter控件和两个水平面板。顶部面板上有病人识别标志,底部面板上有相关的病人文件和树形图。动态改变splitContainer面板的尺寸

patientBanner控件来自英国国立卫生研究院,如果您单击控件内的按钮(右下方的双箭头),它将展开以显示有关患者地址,电话,电子邮件和过敏症的更多信息。

它扩展得非常好,但我不知道如何使splitContainer调整,以便顶部面板可以显示所有信息。

alt text http://www.intellicure.com/files/DocumentManagerScreenShot.jpg

+0

你能添加一个截图或任何可视化你的问题? – 2009-08-10 16:58:25

+0

添加了截图,感谢您的建议。 – 2009-08-10 18:43:39

回答

3

我还没有试过这个。但是,我认为这应该起作用 确保您控制的是停靠以填充面板。

splitContainer.IsSplitterFixed = false. 

splitContainer.DataBindings.Add("Height", <yourcontrol>, "Height") 
+0

我喜欢SplitterDistance属性上DataBinding的一般想法。我使用VS2008,并不熟悉创建自定义DataBinding。 – 2009-08-10 18:44:09

+0

使用与我指定的完全相同的代码。停靠你的控件来填充。 splitContainer.DataBindings.Add(“Height”,,“Height”) 是您的控件的一个实例。 让我们知道你是否无法理解任何东西。 – 2009-08-10 18:53:43

+0

这在我的具体情况中存在问题,但我与控制开发人员一起确定有一个SizeChanged事件,我用它将SplitterDistance设置为Size。谢谢您的帮助。 – 2009-08-12 16:11:20

2

在下面的代码片段中,我调整了我的分离器控制。我已将更新后的控件的宽度用于SplitterDistance。希望能帮助到你。

public DataTable GridView 
    { 
     get { return dataGridView1.DataSource as DataTable; } 
     set { dataGridView1.DataSource = value; 
      splitContainer1.SplitterDistance = dataGridView1.Width; 
     } 
    }