私はSilverlightアプリケーションで作業しており、アプリケーションで3Dサポートを使用しようとしています。DrawingSurface描画イベントが発生しません。
<param name="enableGPUAcceleration" value="true" />
また、アプリケーションがローカルホスト上で実行されている:私はこのラインで3Dサポートを有効にしているIISを経由して80とこれを許可するように設定3Dの使用の許可を持っています。
私はxamlページにDrawingSurfaceを持っていて、その表面を赤くクリアするDrawイベントがアタッチされています。ドローは発砲しない。だから私はMouseLeftButtonDownでDrawingSurfaceを無効にしようとしました。ここではいくつかのコードです:
private void TestDrawing_Draw(object sender, System.Windows.Controls.DrawEventArgs e)
{
GraphicsDeviceManager.Current.GraphicsDevice.Clear(new Microsoft.Xna.Framework.Color(255, 0, 0));
}
private void TestDrawing_MouseLeftButtonDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
{
if (GraphicsDeviceManager.Current.RenderMode == RenderMode.Hardware)
{
TestDrawing.Invalidate();
}
}
がDEBUGMODEにチェック、私はのMouseLeftButtonDownイベントが火をないことが判明します。 GraphicsDeviceManager.Current.RenderModeがRenderMode.Hardwareに設定され、Invalidate()メソッドが実行されます。しかし、Drawイベントはまだ起動しません。
特定のポート(50814)で開発者サーバー経由で実行されるtestprojectを作成しました。ここでも、enableGPUAccelerationはtrueに設定され、permissionはAllowに設定されています。このtestprojectはDrawイベントを発生させません。
私の大きなアプリケーションは、enableGPUAccelerationがtrueに設定され、許可が許可に設定されたIISサーバー(localhost:80)で実行されても、Drawイベントが発生しません。 enableGPUAccelerationがtrueに設定され、許可が許可されているポート50814で開発者サーバーを実行している単純なテストプロジェクトでは、Drawイベントが発生します。
私のアプリケーションで3Dを有効にする方法はわかりません。皆さんには何か提案がありますか?