Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#wpf-在执行期间添加到xaml文件_C#_Wpf_Xaml - Fatal编程技术网

C#wpf-在执行期间添加到xaml文件

C#wpf-在执行期间添加到xaml文件,c#,wpf,xaml,C#,Wpf,Xaml,这就是我的主程序GUI的样子,我试图做的是使用wpf在C#中创建一个提醒应用程序 我将使用一个滚动查看器,它将向用户显示数据,即他们当前拥有的提醒 每次用户添加提醒时,都会添加以下内容: 我想做的是,当用户添加新的提醒时,将有一组新的数据添加到scrollviewer 实现这一目标的最佳方式是什么 我是否能够保存xaml数据并在执行期间添加它 感谢您的帮助您想要做的不是通过动态Xaml,而是通过使用可以接受动态数据的模板化控件来完成。例如,您不会考虑使用ListBox用于标签,因为您没有在列

这就是我的主程序GUI的样子,我试图做的是使用wpf在C#中创建一个提醒应用程序

我将使用一个滚动查看器,它将向用户显示数据,即他们当前拥有的提醒

每次用户添加提醒时,都会添加以下内容:

我想做的是,当用户添加新的提醒时,将有一组新的数据添加到scrollviewer

实现这一目标的最佳方式是什么

我是否能够保存xaml数据并在执行期间添加它


感谢您的帮助

您想要做的不是通过动态Xaml,而是通过使用可以接受动态数据的
模板化控件来完成。例如,您不会考虑使用ListBox用于标签,因为您没有在列表中显示数据,是正确的?

但是列表框只是你想要实现的东西的传送带。假设你想要的不仅仅是一个标签,那么三个标签怎么样。通过绑定到适当的结构,您可以获得所需的内容

这里有一个例子

<ListBox ItemsSource="{Binding myReminders }">
   <ListBox.ItemTemplate>
     <DataTemplate>
       <StackPanel>
         <TextBlock Text="{Binding Path=ReminderName}" />
         <TextBlock Text="{Binding Path=Description}"/>
         <TextBlock Text="{Binding Path=Priority}"/>
       </StackPanel>
     </DataTemplate>
   </ListBox.ItemTemplate>
 </ListBox>

一旦它绑定到我的提醒数据对象列表(列表可以动态更改),我们就能够以我们想要的任何格式显示提醒。您只需使用上面的内容来适当地设置样式。(查看WPF的一个很好的例子)


模板的使用是在其他控件中完成的,因此如果列表框不符合您的喜好,请查看其他模板化控件

感谢您正确编辑图片谢谢您的回答。因此,它将使用该模板为MyMementions中的每个项目创建一个新的列表框,对吗?@user2469515是的,将您的项目放入
observeCollection
中,这样当添加项目时,它会通知活页夹它已更改。或者,如果不在可观察的集合中,只需重新绑定到列表即可达到相同的效果。非常感谢您的帮助。@user2469515我有一篇博客文章,其中提供了一个快速的MVVM示例,如果您是MVVM新手,则提供绑定。