我有一个继承自内置DataGridView
控件的mydatagridview类,如下所示:
public class mydatagridview : DataGridView
{
protected override bool ProcessDataGridViewKey(KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
this.ProcessTabKey(e.KeyData);
return true;
}
return base.ProcessDataGridViewKey(e);
}
protected override bool ProcessDialogKey(Keys keyData)
{
if (keyData == Keys.Enter)
{
this.ProcessTabKey(keyData);
return true;
}
return base.ProcessDialogKey(keyData);
}
}
现在我想在我的主要课程中使用它:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
}
我想在Datagridview1中使用myDatagridview:public partial class Form1:Form
我该怎么做?
答案 0 :(得分:2)
您需要创建自定义控件类的实例,然后将该实例添加到表单的Controls
集合中。例如:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// Create an instance of your custom control
mydatagridview myDGV = new mydatagridview();
// Add that instance to your form's Controls collection
this.Controls.Add(myDGV);
}
}
当然,您也可以从Designer中做同样的事情。它会在InitializeComponent()
方法中自动插入与上面显示的代码非常相似的代码。
如果您的自定义控件在重建项目后未自动显示在工具箱中,请确保您enabled toolbox auto-population:
将“AutoToolboxPopulate”属性设置为True。
答案 1 :(得分:1)
如果我理解正确,并且我不确定我这样做,你可以像任何其他类型一样使用它:
mydatagridview mydatagrid = new mydatagridview();
this.Controls.Add(mydatagrid);
答案 2 :(得分:0)
在已经给出的答案旁边,应该可以将控件从工具箱拖放到表单中。
如果您创建用户控件或自定义控件并构建项目,则控件应显示在工具箱中。