これが問題です。ボタンのある基本的なWebサイトがあります。これらのボタンはjavascriptを介して実行され、コードはC#で実行され、Silverlightガントコントロールを使用してさまざまな処理を実行します。
たとえば、ガントコントロールをズームインしたい場合は、次のようにします。
<button id="zoomIn" onclick="SlZoomIn()">Zoom In</button>
次にjavascriptで:
function SlZoomIn() {
var control = document.getElementById("SilverlightPlugIn");
control.Content.SilverPlan.JsZoomIn();
}
次にC#で:
[ScriptableMember]
public void JsZoomIn()
{
try
{
gantt.ZoomBySteps(1);
}
catch (Exception e)
{
MessageBox.Show("Zoom In does not work.");
}
}
これはすべて正常に機能しますが、イベントを必要とするガントを使用して何かを実行したい場合、これは問題になります。たとえば、ガントコントロールを印刷または全画面表示したい場合です。これどうやってするの?
C#では、このためのコードは次のとおりです。
private void fullScreen(object sender, RoutedEventArgs e)
{
Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen;
}
しかし、このメソッドをトリガーするには、JavaScriptで何をする必要がありますか?ユーザーがボタンを全画面でクリックしたとき?