簡體   English   中英

C# - 如何識別從表單 1 到表單 3 單擊的每個按鈕?

[英]C# - how to identify a every single button clicked from form 1 on form 3?

我對此有很多麻煩

我在 Visual Studio 上使用了 3 個 forms,第一個(表格 1)是一個帶有很多綠色按鈕的狀態屏幕,每個按鈕代表一台機器。 單擊其中一個按鈕后,它應該會打開一個基本登錄屏幕,以驗證您有權訪問下一步(表格 2),一旦您登錄,就會出現另一個 winform(表格 3)來生成失敗報告。 提交失敗報告后,它應該會識別表單 1 上的單擊按鈕並更改按鈕的顏色和文本。

這里的交易是我不知道如何識別按鈕,我在表格 3 上有這個代碼:

private void button1_Click(object sender, EventArgs e)
    {
       foreach (Form1 f1 in Application.OpenForms.OfType<Form1>())
        {
            f1.button1.Text = "your text here"; // Provided button1 is public.

        }
    }

如果我以這種方式保留代碼,它將僅適用於 Form1 的 button1。 我希望它識別任何點擊的按鈕

sender實際上是觸發事件的Button

sender轉換為Button后,您可以訪問其各種屬性以執行任何您喜歡的操作,例如檢查Button名稱或更改其文本。

var button = sender as Button:
if (button.Name == "myButton1") {
   // do this and that for button 1
}

該答案旨在直接回答您的問題,不對可能不理想的設計發表評論。

暫無
暫無

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

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