关于winform的用户控件问题
我做了一个用户控件,里面就一个Panel,我在其他界面上拖放了这个用户控件,有什么办法往这个用户控件的Panel里面再拖放别的控件呀,用户控件里的Panel的Modifiers属性已经设置成Public了,求高手指点啊
将此Panel设为Public
4.为此UserControl1控件增加一个Desginer(网上查其含义)
5.为UserControl1增加Designer,最后UserControl1的声明为:
如果没有给UserControl1增加Desginer,也就是如果声明UserControl1时没有[Designer(typeof(UserControl1Designer))]这一行的话,UserControl1中的panel1是无法编辑的。为了说明情况,将UserControl1的BorderStyle设置为Fixed3D,将panel1的BorderStyle设置成FixedSingle。
[解决办法]
UserControl1的完整定义:
注意:添加system.desgin.dll 引用
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Windows.Forms.Design;
namespace WindowsFormsApplication1
{
[Designer(typeof(UserControl1Designer))]
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
}
class UserControl1Designer : ScrollableControlDesigner
{
public override void Initialize(IComponent component)
{
base.Initialize(component);
if (this.Control is UserControl1)
{
this.EnableDesignMode((
(UserControl1)this.Control).panel1, "可二次设计的子控件");
}
}
}
}