【发布时间】:2018-07-27 07:30:22
【问题描述】:
我有一个Form,命名为MyForm,Form中有一个UserControl,命名为MyUserControl。我想将焦点设置到 MyUserControl 中的 TextBox。
所以连接看起来像这样:
- Form ┐
-- UserControl ┐
--- TextBox
当MyForm 显示时,MyUserControl 也会显示,并且焦点不适用于此解决方案:
public partial class MyUserControl : UserControl
{
public MyUserControl()
{
InitializeComponent();
}
private void MainFormV2HWT_Shown(object sender, EventArgs e)
{
ActiveControl = textBox1;
}
}
但它适用于这个解决方案:
public partial class MyUserControl : UserControl
{
// ...
public TextBox MyTextBox
{
get
{
return textBox1;
}
}
// ...
}
public class MyForm() : Form
{
public MyForm()
{
InitalizeComponents();
}
private void MyForm_Shown(object sender, EventArgs e)
{
ActiveControl = myUserControl.MyTextBox;
}
}
我也尝试先将 ActiveControl 设置为 MyUserControl,然后在 MyUserControl 中将 ActiveControl 设置为 MyTextBox,但它也不起作用。 p>
问题:
我的工作解决方案是一个很好的解决方案,还是有任何更简单、更好的解决方案,而不是使用来自MyForm 的MyTextBox?
【问题讨论】:
标签: c# .net winforms user-controls