我开发了一个winform,它有几个单选按钮,Checkboxes,Dropdown和一个文本框。需要根据上述控件中的选择填充文本框,
例如:如果选择radiobtn1,请检查Box1& dropdown1的第一个值,那么它应该像下面的
txtBox.text = radiobtn1.Text_checkBox1.Text_dropdown1.SelectedIndex
对此进行了浏览,我发现它可以使用委托来完成,但我有12个控件,你建议使用委托吗? 还有其他简短的方法来编写这段代码吗?
答案 0 :(得分:0)
编写代码的最简单方法可能是创建一个填充文本框的事件处理程序。它看起来像这样:
private void UpdateTextbox(object sender, EventArgs e)
{
//find the text
txtBox.Text = string.Format("{0}_{1}_{2}", radiobtn1.Text, checkBox1.Text, dropdown1.SelectedIndex);
}
然后,您只需通过将其他控件更改为事件处理程序来链接所有引发的事件。
//Add these lines to the constructor of your control
radiobtn1.CheckChanged += UpdateTextbox;
checkbox1.CheckChanged += UpdateTextbox;
//and so on