我在Silverlight中遇到XAML文件时遇到了真正的困难,因为在使用Blend时它们变得非常快。只需添加少量控件并设置动画后,它就会变成文本墙。
我希望很快会有更好的Blend版本出现,这样我们的设计师就不会再看到XAML了。但是现在,这不是一个解决方案 - XAML仍然需要手动管理,这是一个令人沮丧的任务。
有没有人找到解决方案?你如何保持你的XAML文件的顺序?当他们变大时,你如何理解他们?
编辑:我对Silverlight解决方案特别感兴趣,因为Silverlight不支持最明显的WPF解决方案 - 将内容分解为资源词典。
答案 0 :(得分:11)
维护XAML文件需要一些工作,但基本上,您需要做的是使用对您有意义的方案将它们拆分为资源文件(XAML资源字典)。
例如,我们使用一个方案,我们有一个像这样的文件夹结构:
资源(包含代表用户控件和页面的XAML文件)
您的结构可能会有所不同,但是,从长远来看,将不同文件中的所有资源分开确实使维护变得更加容易。
答案 1 :(得分:7)
自从1月份私有版本发布以来,我一直在使用Silverlight 2,我们遇到了这个问题,我们所有的XAML都在一个大文件中。我们作为最佳实践所做的是基于可视分类(页眉,页脚,导航控件等)将用户界面分解为单独的用户控件。最初我们尝试使用嵌套的画布(网格尚未添加到框架中)这变成了后来的维护噩梦。
在Blend中,您可以从“对象和时间线”窗口中选择一个画布/网格等...,右键单击它,然后您将获得“制作控制...”选项。这样可以快速重新分解和模块化我们的主XAML文件。然后,我们使用事件来允许用户控件在彼此之间进行通信。
希望这有帮助,祝你好运!
答案 2 :(得分:2)
我是一名创意开发人员,并广泛参与Blend。
我去年在keeping XAML clean发表了一些想法。
Silverlight目前不支持MergedResourceDictionaries所以很难将XAML分解为单独的ResourceDictionary文件,正如我在another post中所建议的那样。
Paul Stovell也有一些有趣的guidelines for XAML。