我有这样的形式:
MainKozep:
TAB1:
有动态创建的按钮(来自数据库),每个按钮都是可点击的(使用button.Click + = delegate {})
我尝试了很多解决方案,但没有奏效,所以我的问题是:
当其中一个按钮单击Tab(*)时,需要将精确变量写入tetels Listbox并将另一个变量写入tetels_ar Listbox。
感谢您的帮助, DRIS
答案 0 :(得分:0)
如果动态创建tetels和tetels_ar,则使用类范围实例化它们。然后,从buttonClick处理程序,运行buttonClicked,如下所示。在这里,我用字符串更新tetels,但你可以将该值设置为你想要的任何变量:
ListBox tetels = new ListBox();
ListBox tetels_AR = new ListBox();
private void buttonClicked(string buttonName)
{
tetels.Items.Add(buttonName);
tetels_AR.Items.Add("otherValue" + buttonName);
}
如果您使用许多不同的列表视图,则可以使用下面的代码动态添加。为每个动态创建的按钮分配my_Button_Clicked作为onClick事件,然后:
private void buttonClicked(string listName, string variableValue)
{
ListBox l = (ListBox)Controls.Find(listName, true)[0];
l.Items.Add(variableValue);
}
private void myButton_Clicked(object sender, EventArgs e)
{
Button b = (Button)sender;
buttonClicked("tutels", b.Name);
buttonClicked("tutels_AR", b.Text);
}
按原样创建按钮:
private void createButton(string name, string buttonText,string parentControlName)
{
Button b = new Button();
b.Name = name;
b.Text = buttonText;
b.Click += myButton_Clicked;
Control c = Controls.Find(parentControlName, true)[0];
c.Controls.Add(b);
}