我们的经理希望我们正在开发的WPF应用程序可以完全为用户定制。所以我们假设页面上有一个文本框。他希望用户能够将它放在他想要的任何位置,使其具有他想要的任何颜色或字体,等等。现在,实现的目的是将每个属性存储在SQL数据库中,然后在您的数据库中构建视图代码背后。
在我看来,这是一个糟糕的实施,因为它减缓了整个过程。当我浏览页面时,加载时间至少为10秒,其中后面的代码获取所有属性,将它们转换为对象,将对象实现到视图中,然后创建该视图。我认为必须有更好的方法来做到这一点,因为它吸收了大量的时间和资源。有没有更好的实现呢?
答案 0 :(得分:2)
有很多方法可以做到这一点,但是如果你需要拥有"一切都可以改变"然后......有一种快速的方法,甚至没有任何外部工具。
默认情况下,XAML被编译并包含在.exe / .dll中,但XAML可以从文件/字符串/中动态加载。将XAML放在一个文本文件中(它已经是),将编译选项更改为不编译它,但包含为" content"并且"始终复制",动态加载该文件(XmlReader.Load method)。
现在用户可以编辑XAML,应用程序将收听它。
当然: