【问题标题】:Looking for a method to get button ID when pushed寻找一种在按下时获取按钮 ID 的方法
【发布时间】:2016-11-16 19:44:34
【问题描述】:

构建一个程序,当按下按钮时,它将按下的事件保存为数组中的“1”。我想要 3 个按钮,因此在指定的时间长度内,数组将有 3 个字段,其中包含 0 或 1(推送或未推送)。对C#不太熟悉,所以我不知道从哪里开始。有什么想法吗?

【问题讨论】:

标签: c# events button


【解决方案1】:

首先,您应该熟悉 C# 语言。一个好的开始:https://www.tutorialspoint.com/csharp/

我不知道您的最终目标是什么,但是如果您真的想使用数组,请尝试以下操作:

// declare it as class member
int[] buttonStates = new int[3] {0, 0, 0}; // immediate initialization

有几种方法可以处理按钮按下。这取决于您正在开发的平台:WinForms、ASP.NET、WPF 等?

但总的来说:
您的按钮事件处理程序应包含将 1 放入数组的代码。

// in the first button handler:
buttonStates[0] = 1;

// in the second button handler:
buttonStates[1] = 1;

// in the third button handler:
buttonStates[2] = 1;

【讨论】:

    【解决方案2】:

    添加到提供的答案并按照您的标题建议获取按钮 ID。要唯一标识每个按钮,您可以使用按钮的“名称”(要识别的元素的唯一名称)或“标签”(可用于存储有关元素的自定义信息)属性。 您可以在按钮的标签属性中设置按钮ID:

    Button btn = new Button();
    btn.Tag = 1;
    

    然后在你的事件处理程序中

    private void Btn_Click(Object sender, RoutedEventArgs e)
    {
    Button b = (Button)sender;
    int btnTag = (int)b.Tag;   //check the Id
    }
    

    并且可以使用此“ID”引用按钮

    【讨论】:

      猜你喜欢
      • 2018-05-22
      • 1970-01-01
      • 1970-01-01
      • 2021-12-14
      • 2021-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-20
      相关资源
      最近更新 更多