SilverLight で最初のプログラムを作成しようとしています。しかし、InkCanvas を使用できません。
簡単に言えば、私はただ:
- 新しいプロジェクトを作成します。
- SilverLight アプリケーションの選択 (フレームワーク 4.5)
- 「Web サイトで Silverlight アプリケーションをホストする...」のチェックを外します。
- SilverLight バージョン 5
- 「WCF RIA サービス」のチェックを外す
- [ツールボックス] > [アイテムの選択] > [SilverLight コンポーネントから InkCanvas を選択] をクリックします。
- InkCanvas をフォームに追加し、背景色を黒に変更します
- 「開始」をクリックします(デバッグ)
しかし、Canvas を表示したり使用したりできません。
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>
次に、次の 2 つのエラーが発生します。
エラー 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
に、Prototyping 名前空間にはありません。ソリューション エクスプローラーで確認できますが、InkCanvas に関連する参照は 2 つしかありません。
Microsoft.Expression.Prototyping.Interactivity
microsoft.expression.prototyping.runtime
「参照の追加」から「ワークスペース」を追加しようとしましたが、見つかりませんでした。
アップデート :
実際、InkCanvas はまだ正式に Silverlight に移植されていないと思います。新しい PC で同じ手順を実行しようとしましたが、そもそも InkCanvas が存在しないことに気付きました。Blend に関連する何かが、自分の PC にプロトタイプ コントロールを追加したのかもしれません。それでもうまくいきません:(
InkCanvas に代わるものについては、どんな提案も歓迎します。