簡體   English   中英

從 C# 面板中刪除按鈕(用戶控件)

[英]Remove a button (User Control) from a panel in C#

我有一個 UserControl (UC),在那個 UC 我有一個標簽和一個圖片框。
當我向面板添加許多 UC 時,每當用戶單擊圖片框時,我都需要刪除 UC。
但是,我不能選擇真正的UC。

添加事件的 UC 代碼:

public event EventHandler<EventArgs> X_click;

private void guna2PictureBox1_Click(object sender, EventArgs e)
{
    if (X_click != null)
    {
        X_click(guna2PictureBox1, new EventArgs());
    }
}

這是我選擇和刪除真正 UC 的代碼:

private void a1_X_click(object sender, EventArgs e)
{
   foreach (Control item in guna2Panel1.Controls.OfType<addCatUC>())
   {
      if (sender == item)
      {
         guna2Panel1.Controls.Remove(item);
      }
   }
}

注意:我為所有 UC 添加事件a1_X_click

addC.X_click += new EventHandler<EventArgs>(a1_X_click);

我使用此代碼並能夠刪除正確的按鈕:

    private void a1_X_click(object sender, EventArgs e)
    {
        ((Control)sender).Parent.Dispose();
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM