Caliburn.Micro - 将contentpresenter数据绑定到viewmodel

时间:2014-04-01 10:37:16

标签: c# wpf mvvm caliburn.micro

我在caliburn micro中有一些数据绑定视图模型的问题,我有以下代码:

<ContentControl Content="{Binding PaymentDetails}">
                <ContentControl.Template>
                    <ControlTemplate TargetType="ContentControl">
                        <Grid>
                            <Controls:RoundedBox/>
                            <ContentPresenter Content="{Binding PaymentDetails}" Margin="10,0,10,0"/>
                        </Grid>
                    </ControlTemplate>
                </ContentControl.Template>
            </ContentControl>

问题是,PaymentDetails是一个viewmodel,虽然数据绑定到一个简单的ContentControl使用caliburn微命名约定来查找视图,但在使用模板和contentpresenter时,viewmodel绑定只显示viewmodel的字符串表示而不是找到视图。我不是这方面的专家,而且我在谷歌上找不到答案。

我想要的是在使用模板时,让viewmodel绑定自动查找视图,但我想我在这里缺少一些理解。

1 个答案:

答案 0 :(得分:4)

而不是绑定到Content属性,而是使用cal:View.Model="{Binding ViewModelName}"

示例:

<ContentControl cal:View.Model="{Binding PaymentDetails}" />