我正在尝试动态创建轨迹栏和标签。其中如果用户输入类似4的数字,则会创建4个轨迹栏和4个标签。然后,如果用户移动任何动态创建的轨迹栏,则移动它并更新其相关标签。然后在所有标签中添加数字,并将其存储在另一个标签调用总标签中。
这是解释它的另一种方式。用户输入数字3.系统创建3个轨迹栏和3个标签(在轨迹栏旁边)。用户将第一个轨迹栏移动到5,第一个标签自动更新为5.用户将第二个轨迹栏移动到3,第二个标签自动更新为3.最后用户将第三个轨迹栏移动到位置9并且标签自动更新为9.
在右侧有另一个标签显示17 =(5 + 3 + 9)。
我找到了一些创建动态控件的网站,但我不知道如何将动态创建的跟踪栏链接到动态创建的标签。然后添加那些动态添加的标签。
所有这些都在Windows窗体上的C#中。
在创建标签和轨道栏时,我做了一些非常类似的事情。
for (int i = 0; i < 10; i++)
{
Label label = new Label();
label.Text = i.ToString();
PlaceHolder1.Controls.Add(label);
}
谢谢你的进步
------------------------更新-----------------
void CreateLabeledTrackBars(Control host,int n)
我如何使用它,我希望当我开始一个新表格时
我所需要的只是这个......那种形式已经有了n,但似乎没有工作..我对控制如何工作感到困惑。你可以解释一下
namespace WindowsFormsApplication1
{
public partial class Form3 : Form
{
public static Form2 myNewForm = new Form2();
private TrackBar[] _trackBars;
private Label[] _labels;
public Form3(int n)
{
CreateLabeledTrackBars(new Label (), n);
}
//Then the rest of the code
答案 0 :(得分:1)
您需要处理您创建的每个ValueChanged
的{{1}}事件。要计算所有值的总和,请将创建的控件存储在数组中。
TrackBar
现在,当你有一个轨道栏数组时,获得所有值的总和应该是微不足道的。