And*_*ers 7 mvvm avalondock caliburn.micro
是否有关于将AvalonDock与Caliburn Micro MVVM一起使用的博客或文章?谷歌搜索时找不到多少
http://avalondock.codeplex.com/
编辑:得到了投票,所以为什么不用最终解决方案更新.完整代码可以在这里找到
https://github.com/AndersMalmgren/FreePIE
大多数与avalon相关的代码都可以在这里找到
https://github.com/AndersMalmgren/FreePIE/blob/master/FreePIE.GUI/Shells/MainShellView.xaml
Sam回答后更新
为了使Caliburn成功,需要做的非常非常少.首先实现一个LayoutItemTemplateSelector
public class AutobinderTemplateSelector : DataTemplateSelector
{
public DataTemplate Template { get; set; }
public override DataTemplate SelectTemplate(object item, DependencyObject container)
{
return Template;
}
}
Run Code Online (Sandbox Code Playgroud)
并将其与内容控件和Caliburns View.Model附加机制一起使用
<xcad:DockingManager.LayoutItemTemplateSelector>
<avalonDock1:AutobinderTemplateSelector>
<avalonDock1:AutobinderTemplateSelector.Template>
<DataTemplate>
<ContentControl cal:View.Model="{Binding . }" IsTabStop="False" />
</DataTemplate>
</avalonDock1:AutobinderTemplateSelector.Template>
</avalonDock1:AutobinderTemplateSelector>
</xcad:DockingManager.LayoutItemTemplateSelector>
Run Code Online (Sandbox Code Playgroud)
在研究同样的事情时,我遇到了Tim Jones开发的Gemini框架:
Github - https://github.com/tgjones/gemini
网站 - http://documentup.com/tgjones/gemini
这是尝试将AvalonDock与Caliburn.Micro集成,以提供用于构建类似IDE的应用程序的单一框架.它还处于早期阶段,但他正在实施一些基于Caliburn整体设计的有趣抽象.
它还有一些很好的演示应用程序,展示了如何使用框架.
http://caliburnmicro.codeplex.com/discussions/231809 和 http://caliburnmicro.codeplex.com/discussions/430994(解决方案)
我相信这是我用来为 telerik 的RadDockingManager. 那篇文章和这段代码可能会有所帮助。
| 归档时间: |
|
| 查看次数: |
2454 次 |
| 最近记录: |