3
我正在开发一个Windows窗体应用程序。我有以下问题:在一个窗体中有一个面板,在该面板中我有一些控件(只是带有文本框的标签,数字在运行时确定)。此面板的大小小于动态添加的所有控件的总和。所以,我需要一个滚动。那么,这个想法是:当用户打开表单时:必须关注第一个控件,用户输入文本并按下回车键,下一个控件必须被集中,直到完成。窗体窗体:以编程方式滚动
嗯,很可能并非所有的控件都适合面板,所以我希望当面板中的控件获得焦点时,面板会滚动以让用户看到控件并让他看到他正在输入的内容文本框。
我希望能够清楚。
这里是一些代码,这个代码是用来生成控件并添加到面板:
List<String> titles = this.BancaService.ValuesTitle();
int position = 0;
foreach (String title in titles)
{
BancaInputControl control = new BancaInputControl(title);
control.OnInputGotFocus = (c) => {
//pnBancaInputContainer.VerticalScroll.Value = 40;
//pnBancaInputContainer.AutoScrollOffset = new Point(0, c.Top);
// HERE, WHAT CAN I DO?
};
control.Top = position;
this.pnBancaInputContainer.Controls.Add(control);
position += 10 + control.Height;
}
那么你想要一个滚动动画?或者只是重新定位/切换某些控件的可见性? – SkonJeet 2012-03-19 13:04:31
谢谢,只有当他们获得焦点时控件的可见性 – 2012-03-19 13:21:15