我正在尝试在 SilverLight 中创建我的第一个程序。但我不能使用 InkCanvas。
简单地说,我只是:
- 创建一个新项目。
- 选择 SilverLight 应用程序(框架 4.5)
- 取消选中“在网站中托管 silverlight 应用程序...”
- SilverLight 版本 5
- 未选中“WCF RIA 服务”
- 单击工具箱 > 选择项目 > 从 SilverLight 组件中选择 InkCanvas
- 将 InkCanvas 添加到表单并将其背景颜色更改为黑色
- 点击“开始”(调试)
但我看不到或使用画布。
这是 XAML:
<UserControl 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"
xmlns:Workspace="clr-namespace:Microsoft.Expression.Prototyping.Workspace;assembly=Microsoft.Expression.Prototyping.Runtime"
x:Class="SilverlightApplication3.MainPage"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<Grid x:Name="LayoutRoot"
Background="White">
<Workspace:InkCanvas HorizontalAlignment="Left"
Height="204"
Margin="36,52,0,0"
VerticalAlignment="Top"
Width="310"
Background="Black" />
</Grid>
</UserControl>
然后我得到这两个错误:
错误 1 未定义的 CLR 命名空间。“clr-namespace” URI 引用了找不到的命名空间“Microsoft.Expression.Prototyping.Workspace”。c:\users\xperator\documents\visual studio 2012\Projects\SilverlightApplication3\SilverlightApplication3\MainPage.xaml 6 21 SilverlightApplication3
和
错误 2 找不到类型“Workspace:InkCanvas”。确认您没有丢失程序集引用并且所有引用的程序集都已构建。c:\users\xperator\documents\visual studio 2012\Projects\SilverlightApplication3\SilverlightApplication3\MainPage.xaml 12 10 SilverlightApplication3
正如错误所说,Workspace
原型命名空间中没有。我可以在解决方案资源管理器中看到,只有 2 个与 InkCanvas 相关的参考:
Microsoft.Expression.Prototyping.Interactivity
microsoft.expression.prototyping.runtime
尝试从“添加参考”添加“工作区”,但找不到。
更新 :
我认为实际上 InkCanvas 尚未正式移植到 silverlight。尝试在新的电脑上执行相同的步骤,我只是注意到 InkCanvas 一开始就不存在。也许与 Blend 相关的东西在我自己的 PC 中添加了原型控件。还是不行:(
我愿意接受有关 InkCanvas 替代品的任何建议。