C#WPF动态事件到按钮数组

时间:2013-05-19 21:11:53

标签: c# wpf arrays

我想知道如何制作Array Buttons Buttonfor (int i = 0; i < n; i++) { _arr[i] = new Button(); _arr[i].Height = 25; _arr[i].Width = 25; _arr[i].Content = Convert.ToString(randomnumber); _arr[i].Margin = new Thickness(30,0,150,0); _arr[i].Click += (a, b) => { do something } } {{1}}及其具体内容,位置和最重要的操作。据我所知,这样做的方法是:

{{1}}

所以我的实际问题是:有没有更好的方法呢?

2 个答案:

答案 0 :(得分:0)

您可以创建包含MyButtonWidthHeightContent以及您认为有用的其他内容的课程IsDefault。置于ItemsControl控件,将ItemsSource绑定到List<MyButton>,您可以ItemsPanel格式应用DataTemplate。操作也可以通过Command绑定到您班级中的每个按钮,或者您可以在其中执行一个操作,您可以在其中检查已按下哪个按钮并做出反应。

答案 1 :(得分:0)

将您的按钮放在StackPanelGrid或任何Panel内,并处理此面板的ButtonBase.Click事件。所以只需一个事件处理程序在事件处理程序中,您可以将OriginalSource的{​​{1}}强制转换为Button,然后在数组中标识其索引或其内容,或其名称或标记。