簡體   English   中英

如何在winform c#中禁用按鈕時將焦點設置在按鈕上?

[英]How to set focus on button while button is disabled in winform c#?

當 windows 表單應用程序中的按鈕被禁用時,我想在按鈕中設置焦點。

有沒有辦法實現這個目標?

背景:

我正在制作一個可供盲人使用的應用程序,因此當按鈕啟用時,屏幕閱讀器將讀取按鈕內容,但是當按鈕被禁用時,屏幕閱讀器無法讀取,因為按鈕無法讀取專注於禁用模式

您可以嘗試通過以下代碼添加和刪除點擊事件,而不是啟用和禁用 C# 中的按鈕。

對於刪除點擊事件

button.Click -= button_Click;

添加點擊事件

button.Click += button_Click;

作為參考,您可以參考以下鏈接。

如何訂閱和取消訂閱事件(C# 編程指南)

您可以創建自定義控件並在自定義控件中創建一個屬性。 使用該屬性檢查OnClick是否需要觸發。

例如:

   public class buttonReadonly: Button
   {
       private bool _isReadOnly = false;

       public bool isReadOnly
       {
           get
           {
               return _isReadOnly;
           }
           set
           {
               _isReadOnly = value;
           }
       }

       protected override void OnClick(EventArgs e)
       {
           if (!isReadOnly)
           {
               base.OnClick(e);
           }
       }
       
   }

暫無
暫無

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

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