添加“动态”控件的最佳方法是什么?

时间:2015-01-30 01:16:23

标签: c#

我的程序将提示用户输入一个数字,即25.然后程序将启动带有25个控件(文本框)的“主窗体”。 25(或任何数量)的文本框(或任何控件)将需要均匀格式化。我还需要能够按顺序从左到右,从上到下检索文本(或者如果我使用另一个控件,则检索另一个属性)。接近这个的最佳方法是什么?

3 个答案:

答案 0 :(得分:2)

使用WPF MVVM。在.XAML文件中,使用ViewModel的DataTemplate创建DataType,该TextBox将为您的TextboxViewModel提供绑定,让我们将其称为ItemsControl。然后使用ItemsSource元素TextboxViewModel TextBox。您可以根据需要实例化TextboxViewModel个{{1}},并可以浏览{{1}}列表来获得结果。

答案 1 :(得分:0)

假设您在此处使用Windows窗体。 动态创建X控件并将它们添加到窗体的Controls集合中。为了便于访问它们,您可以将它们的引用存储在List中,并根据您的需要设置一些事件处理程序。你只需要在添加它们时计算它们的位置。

答案 2 :(得分:0)

如果是WinForms,这正是FlowLayoutPanel的用途。只需添加控件,它们就会自动排列,根据需要包装到下一行。正如Mihai已经建议的那样,您也可以在List中继续引用这些控件。

另一种选择是使用TableLayoutPanel。它的学习和使用起来有点困难,但更加灵活和强大。