私はCaliburn.Microを初めて使用するので、誰かがここで私を助けてくれることを願っています:)。
Windows 8 アプリで MessageBinder.SpecialValues を使用しようとしていますが、機能しません。新しい「$pointerPercentage」を追加して、マウスが要素内に配置されている距離のパーセンテージ (0.0 から 1.0 の間の浮動小数点数) を確認します (シンセサイザー アプリの音楽キーボードの場合)。他のすべては現在機能しています (したがって、Caliburn.Micro が適切に配線されていると思います)。
App.xaml.cs の Configure メソッドに以下を追加しました。
protected override void Configure()
{
container = new WinRTContainer();
container.RegisterWinRTServices();
MessageBinder.SpecialValues.Add("$pointerPercentage", ctx =>
{
return 1.0f;
});
}
次に、Canvas 要素内の PointerMoved イベントから使用しています。
<Canvas x:Name="keyCanvas" Background="#338B8BDC"
cal:Message.Attach="[Event PointerMoved] = [Action UpdateKeyboard($pointerPercentage)]" />
ViewModel の UpdateKeyboard メソッドは起動されますが (デバッガーで中断します)、渡されるパラメーターは常に 0.0f です (上記の SpecialValues コードで設定された 1.0f ではありません)。
私は何を間違っていますか?どんな助けでも大歓迎です:)。