C# 在UI中动态地进行更改

C# 在UI中动态地进行更改,c#,wpf,xaml,C#,Wpf,Xaml,我是WPF和C的新手。我需要在Template.xaml中创建一个标签和一个按钮。但是标签和按钮创建的数量是用户特定的,这是另一个design.xaml。i、 e如果用户给出值5,则需要使用Template.xaml文件创建五个标签和按钮 我在design.xaml中尝试了下面这样的东西 xmlns:local="clr-namespace:UserDesign" <local:Template HorizontalAlignment="Left" VerticalAlignment="

我是WPF和C的新手。我需要在Template.xaml中创建一个标签和一个按钮。但是标签和按钮创建的数量是用户特定的,这是另一个design.xaml。i、 e如果用户给出值5,则需要使用Template.xaml文件创建五个标签和按钮

我在design.xaml中尝试了下面这样的东西

xmlns:local="clr-namespace:UserDesign"

<local:Template HorizontalAlignment="Left" VerticalAlignment="Top" />
<local:Template HorizontalAlignment="Left" VerticalAlignment="Top" />
<local:Template HorizontalAlignment="Left" VerticalAlignment="Top" />
xmlns:local=“clr命名空间:UserDesign”

但这似乎是固定的。我需要根据用户输入动态地执行此操作。

如果没有更完整的代码示例,很难准确地知道您的场景是什么。但是,如果您处理的是一组对象,其中每个对象对应于某个
模板
对象的单个实例(可能包含
标签
按钮
对象),那么您可能需要使用WPF的数据模板功能

这里有一个相当不错的教程:

基本思想是声明一个
DataTemplate
对象,该对象用于
ItemsControl
itemstemplate
属性或一个子类(例如
ListBox
)。
DataTemplate
将声明应用于特定的数据类型(例如,集合中的对象类型),并且您将使用模板中的UI元素与数据类型之间的绑定为每个数据对象自定义这些元素


根据您的
模板
本身被声明为什么,它可能适合在
数据模板
声明中使用。或者它可能不是……不看是不可能的。

您可以创建ItemsControl或Listbox来生成按钮和文本框的列表。