【C#】UserControl用法

为了避免将所有的控件堆在 MainForm上,导致整个视图和逻辑特别复杂,可以使用UserControl将相关的控件组合起来,独立成一个个小的视图。

比如主窗口中有多个Tab选项卡,可以将每个Tab选项卡的视图独立成一个UserControl,通过手动添加或者拖放添加到Form中。下面以PrintPanel为例说明用法(VS2015)。

  • 首先,“添加——>新建项——>Visual C#项——>用户控件”,按照原来Tab中的样式设计;
// 与Form的设计类似,只是继承自UserControl
namespace Demo.Views
{
    public partial class PrintPanel : UserControl
    {
        public PrintPanel()
        {
            InitializeComponent();
        }
        ......
    }
}
  • 手动添加: 将PrintPanel添加到MainForm的tab1中。
namespace Demo
{
    public partial class Main : Form
    {
        private PrintPanel printPanel;

        public Main()
        {
            ......
            printPanel = new PrintPanel();
            printPanel.Dock = DockStyle.Fill;
            tab1.Controls.Add(printPanel);
            ......
        }
    }
}
  • 拖放添加: 对于一些小的自定义控件,如果需要显示在“工具箱”中,像其他控件一样拖放设计,可以修改系统设置显示自定义控件。
    • 工具——> 选项——> Windows窗体设计器——> 常规——> AutoToolBoxPopulate(自动填充工具箱)——> True

你可能感兴趣的:(C#)