如何在您创建的私有 void 方法中隐藏所有项目?

菜鸟编码器

所以我创建了我自己的可以创建按钮的私有 void

        private void addButtonsToForm()
        {

           for (int i = 0; i < 26; i++)
         {
               Button currentNewButton = new Button();
               currentNewButton.Size = new Size(20, 30);
               currentNewButton.Location = new Point(20 + 25 * i, 420);
               currentNewButton.Text = ((char)(65 + i)).ToString();
               currentNewButton.Click += LetterClicked;
               letters[i] = currentNewButton;
               this.Controls.Add(letters[i]);
          }

        }

按钮是字母,当用户想要选择一个字母时将被访问......但问题是我试图弄清楚当用户单击或选择一个按钮时如何返回..

最初我想做的是我可以隐藏所有创建的按钮并使上一个按钮可见但由于某种原因它只隐藏唯一被点击的按钮

     //this is under private void LetterClicked(object sender, EventArgs e)
      Button selectedLetter = (Button)sender;
      selectedLetter.Enabled = false;

我想到了愚蠢的代码,addbuttonstoform().visible = false;但当然这行不通……但是您可能会知道我想去哪里……解释起来有点令人困惑……我是 c# 新手,我'我创建了一个猜字游戏,所以帮助可能很棒..

德鲁夫

这是您的问题的有效解决方案。见下文:

using System;
using System.Drawing;
using System.Windows.Forms;

namespace Alphabets
{
    public partial class Form1 : Form
    {
        private Button[] _letters;

        public Form1()
        {
            InitializeComponent();
            AddButtonsToForm();
        }

        private void AddButtonsToForm()
        {
            _letters = new Button[26];
            for (int i = 0; i < 26; i++)
            {
                Button currentNewButton = new Button
                {
                    Name = "BtnLetter"+ ((char)(65 + i)),
                    Size = new Size(20, 30),
                    Location = new Point(20 + 25 * i, 420),
                    Text = ((char) (65 + i)).ToString()
                };
                currentNewButton.Click += LetterClicked;
                _letters[i] = currentNewButton;
                this.Controls.Add(_letters[i]);
            }
        }

        private void LetterClicked(object sender, EventArgs e)
        {
            var selectedLetter = (Button) sender;
            //hide all other buttons
            foreach (var letter in _letters)
            {
                if (letter.Text != selectedLetter.Text)
                {
                    var buttons = this.Controls.Find("BtnLetter" + letter.Text, true);
                    buttons[0].Enabled = false;
                }
            }
        }
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在桌面上隐藏所有项目

来自分类Dev

您如何期望和验证使用PowerMockito和TestNG进行的私有void方法调用?

来自分类Dev

如何从表中隐藏所有tr,但单击除外

来自分类Dev

溢出隐藏隐藏所有内容

来自分类Dev

如何在MacVim中隐藏所有源代码工具提示?

来自分类Dev

如何在12.04及更高版本中隐藏所有桌面图标?

来自分类Dev

如何在Raspberry Pi中隐藏所有启动文本

来自分类Dev

隐藏所有可能查询的条件

来自分类Dev

Java-隐藏所有JButton

来自分类Dev

jQuery隐藏所有子代的父代

来自分类Dev

弹出图像并隐藏所有索引

来自分类Dev

获取阴影以隐藏所有元素

来自分类Dev

隐藏所有可能查询的条件

来自分类Dev

删除/隐藏所有启动屏幕

来自分类Dev

JQuery 隐藏所有元素

来自分类Dev

展开-折叠切换可隐藏所有li项目

来自分类Dev

隐藏所有项目,直到选择了过滤器jQuery同位素

来自分类Dev

QVariant :: QVariant(void *)是私有的

来自分类Dev

如何在公共方法中创建私有变量

来自分类Dev

隐藏所有子元素,但首先隐藏每组元素

来自分类Dev

有没有一种方法可以通过向父级添加内联样式来在父级div /容器中隐藏所有div?

来自分类Dev

void()和void {}有什么区别?

来自分类Dev

void *和*(void **)有什么区别?

来自分类Dev

如何隐藏所有窗口并快速显示桌面?

来自分类Dev

如何隐藏所有WP管理菜单表单

来自分类Dev

如何隐藏所有未突出显示的行?

来自分类Dev

如何使用foreach隐藏所有按钮?

来自分类Dev

隐藏所有普通的Windows快捷方式在Ubuntu 13.10中不起作用

来自分类Dev

仅显示单击链接中的内容,并隐藏所有同级

Related 相关文章

热门标签

归档