2009-08-26 85 views
0

为SplitContainer的MSDN文档控制说:SplitContainer.Panel1选择要更改SplitContainer.Panel2选择

随着SplitContainer控件,您可以创建复杂的用户界面; 经常,在一个面板 一选择决定在什么 另一个面板显示对象。

所以,我有被水平分割为顶部和底部面板一SplitContainer的。 我想要做的是 - 当Panel1(顶部)中的控件获得焦点时,我需要在Panel2(底部)中的一个控件进行聚焦。然后重点必须再次回到Panel1中的控制。

问题是,Panel2中的控件在CanFocus上返回false。我明白,对于某种控制,这种情况可能会发生,并且每个控制的祖先都必须关注焦点。我也尝试过,但无济于事。 CanFocus仍然返回false。

有什么替代方案呢?有没有人试过这个。我所要做的与Outlook的基本相同。在收件箱中选择邮件时。消息正文显示在底部面板中。

回答

0

什么你所描述的不模仿观。如果我在Outlook中的邮件列表中选择邮件,则焦点将保留在邮件列表中。是的,邮件正文显示在下方,但焦点不移动。

不应有任何东西阻止您更改控制面板或显示在面板中的内容。你不应该移动焦点来完成。

0

你真的需要将焦点设置到是Panel2?

我猜你的Panel2包含一些RichTextBox对象,简称为RTB1。

说别人在Panel1中选择了一些东西。为了简单起见,假设您有一个名为LV1的ListView控件。

然后,在LV1.SelectedIndexChanged事件中,读取该事件并将您的数据填充到RTB1。

你不需要给Panel2焦点,除非有什么我失踪。