2010-04-15 206 views
3

我創建了一個從Windows.System.Forms.Controls繼承的自定義控件。將自定義控件添加到DataGridViewCell

這是我此控件的代碼:

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:我是法國人,我對語言錯誤的任何可以道歉。

回答

7

我假設你正在使用Winforms?

Here是關於如何在Winforms DataGridViewCell中託管控件的MSDN教程。

從教程:

DataGridView控件提供 數列類型,使您的 用戶以 多種方式輸入和編輯值。如果這些列類型 不符合您的數據輸入需求,但是,您可以創建您自己的 列類型,並使用您所選擇的控制器的單元格。爲此, 您必須定義DataGridViewColumn和 從DataGridViewCell派生 的類。您還必須定義從Control派生的類 ,並且實現 IDataGridViewEditingControl接口。

+0

謝謝你的回答,我會看到這個。 – Kovscer 2010-04-15 19:21:45

相關問題