Silverlight 4.0 Caliburn.Micro是否支持设计时数据?
Caliburn.Micro是否支持设计时数据? 我尝试了以下步骤; 我创建了一个简单的hello world程序。其中,ShellViewModel是从IShell派生的。通过运行示例程序,它确实在运行时显示hello word。由于视图模型是从IShell派生的,因此我创建了一个虚拟类,该类也是从IShell派生的,并将其用作设计时实例Silverlight 4.0 Caliburn.Micro是否支持设计时数据?,silverlight-4.0,caliburn.micro,design-time-data,Silverlight 4.0,Caliburn.micro,Design Time Data,Caliburn.Micro是否支持设计时数据? 我尝试了以下步骤; 我创建了一个简单的hello world程序。其中,ShellViewModel是从IShell派生的。通过运行示例程序,它确实在运行时显示hello word。由于视图模型是从IShell派生的,因此我创建了一个虚拟类,该类也是从IShell派生的,并将其用作设计时实例 public class SampleShellViewModel:IShell { #region IShell Members pu
public class SampleShellViewModel:IShell
{
#region IShell Members
public string HelloWorld
{
get { return "Hello World"; }
}
#endregion
}
在视图中,我添加了设计时上下文,如下所示
<UserControl x:Class="HelloWorld.ShellView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:sampleData="clr-namespace:HelloWorld"
d:DesignHeight="287" d:DesignWidth="518"
>
<Grid Background="White" d:DataContext="{d:DesignInstance sampleData:SampleShellViewModel, IsDesignTimeCreatable=True}">
<TextBlock Name="HelloWorld"
VerticalAlignment="Center"
HorizontalAlignment="Center"
FontSize="20" />
</Grid>
我少了什么吗?
谢谢引用格雷姆的评论,因为它回答了我的问题 好的,您的
d:DataContext=“blah…
代码非常完美。您仍然需要Text={Binding HelloWorld}
对于blend访问数据(Id完全掩盖了查看该部分),blend不会通过Caliburn约定绑定器运行xaml。它需要显式设置
-格雷姆·布拉德伯里7月22日15:14“引用格雷姆的评论,因为它回答了我的问题 好的,您的
d:DataContext=“blah…
代码非常完美。您仍然需要Text={Binding HelloWorld}
对于blend访问数据(Id完全掩盖了查看该部分),blend不会通过Caliburn约定绑定器运行xaml。它需要显式设置
–Graeme Bradbury 7月22日15:14“请看Derek Beattie的作品。请看Derek Beattie的作品。应用Bind.AtDesignTime应该可以
<UserControl
xmlns:cal="http://www.caliburnproject.org"
cal:Bind.AtDesignTime="True"
>
<!-- etc -->
</UserControl>
应用Bind.AtDesignTime应该可以做到这一点
<UserControl
xmlns:cal="http://www.caliburnproject.org"
cal:Bind.AtDesignTime="True"
>
<!-- etc -->
</UserControl>
看起来很完整,10000美元的问题是。它对您有用吗?好的,您的d:DataContext=“blah…代码非常完美,您仍然需要Text={Binding HelloWorld}才能让blend访问数据(查看该部分时Id完全被掩盖了),Blend不会通过Caliburn convention binder运行xaml。它需要显式设置。是的,就是这样。它应该是答案。你能把它作为一个答案,这样我就可以标记为答案吗?这很有效:它看起来很完整,10000美元的问题是。它对你有用吗?好的,你的d:DataContext=“blah…”。。。代码是完美的,您仍然需要Text={Binding HelloWorld}才能让blend访问数据(Id完全忽略了查看该部分),blend不会通过Caliburn约定绑定器运行xaml。它需要明确设置。是的,就是这样。这应该是答案。你能给我一个答案,这样我就可以把它标记为答案了吗?这很有效: