我创建了一个从Windows.System.Forms.Controls继承的自定义控件。
这是我控制的代码:
public partial class MonthEventComponent : Control
{
private Color couleur;
private Label labelEvenement;
public MonthEventComponent(Color couleur_c, String labelEvenement_c )
{
InitializeComponent();
this.couleur = couleur_c;
this.labelEvenement.Text = labelEvenement_c;
this.labelEvenement.ForeColor = couleur;
this.labelEvenement.BackColor = Color.White;
this.labelEvenement.TextAlign = ContentAlignment.MiddleLeft;
this.labelEvenement.Dock = DockStyle.Fill;
this.Controls.Add(labelEvenement);
}
public MonthEventComponent()
{
InitializeComponent();
this.couleur = Color.Black;
this.labelEvenement = new Label();
this.labelEvenement.ForeColor = couleur;
this.labelEvenement.BackColor = Color.White;
this.labelEvenement.Text = "Evénement Initialiser";
this.labelEvenement.TextAlign = ContentAlignment.MiddleLeft;
this.labelEvenement.Dock = DockStyle.Fill;
this.Controls.Add(labelEvenement);
}
protected override void OnClick(EventArgs e)
{
base.OnClick(e);
MessageBox.Show("Click");
}
}
我想在DataGridViewCell上插入此控件或多个此控件,但我不知道如何执行此操作。
提前感谢您的回答,
最诚挚的问候,
PS:我是法国人,我为任何一种语言错误道歉。答案 0 :(得分:8)
我会假设您使用的是Winforms?
Here是关于如何在Winforms DataGridViewCell
中托管控件的MSDN教程。
从教程:
DataGridView控件提供 几种列类型,使您的 用户输入和编辑a中的值 各种方式。如果这些列类型 不满足您的数据输入需求, 但是,你可以创建自己的 包含托管单元格的列类型 你选择的控件。去做这个, 你必须定义派生的类 来自DataGridViewColumn和 DataGridViewCell的。你还必须定义 一个派生自Control和的类 实现 IDataGridViewEditingControl接口。