c# - 如何为 TextBox 数组创建处理事件

标签 c# wpf

我创建数组:

TextBox[] textarray = new TextBox[100];

然后循环设置这个params,所有items数组位于uniformGrid1

textarray[i] = new TextBox();
        textarray[i].Height = 30;
        textarray[i].Width = 50;
        uniformGrid1.Children.Add(textarray[i]);

如何创建事件单击或双击所有项目数组?
对不起我的英语。

最佳答案

 public static void blah()
        {
            TextBox[] textarray = new TextBox[100];
            List<TextBox> textBoxList = new List<TextBox>();
            for (int i = 0; i < textarray.Length; i++)
            {
                textarray[i] = new TextBox();
                textarray[i].Height = 30;
                textarray[i].Width = 50;

                // events registration
                textarray[i].Click += 
                      new EventHandler(TextBoxFromArray_Click);
                textarray[i].DoubleClick += 
                      new EventHandler(TextBoxFromArray_DoubleClick);
            }
        }

        static void TextBoxFromArray_Click(object sender, EventArgs e)
        {
            // implement Event OnClick Here
        }

        static void TextBoxFromArray_DoubleClick(object sender, EventArgs e)
        {
            // implement Event OnDoubleClick Here
        }

编辑:

根据 @Aaronaugh 的更好/推荐的事件注册方式:建议:

textarray[i].Click += TextBoxFromArray_Click;
textarray[i].DoubleClick += TextBoxFromArray_DoubleClick;

关于c# - 如何为 TextBox 数组创建处理事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2488201/

相关文章:

c# - AsParallel() 顺序执行

c# - 向图像添加行为

wpf - 如何在 XAML 中将列表框从 0 增大到网格的大小

wpf - 如何在 wpf 中实现主题

c# - 将多个项目添加到列表

C# 内存到 TextReader

c# - 为什么asp.net core的URL重写中间件与以下正则表达式不匹配?

c# - Wpf:仅包含默认构造函数和 InitializeComponent() 调用的 xaml.cs 文件的替代方案

wpf - 在MahApp应用程序中设置图标颜色

c# - 非托管 C++ 在构建或不使用 COM 时通过自动注册调用 C# dll?