私はこの問題の解決策を長年にわたって探していましたが、成功しませんでした。F#dispatcher.invokeとdelegateメソッド
私はC#コードの一部をF#に移植していますが、私はDispatcher.InvokeでWPF要素を扱うのに苦労しています。私はF#の全面的な騒ぎであるので、椅子とキーボードの間に問題があることは間違いないと確信しています。ここで
は、私のC#のコードです:
foreach (var k in ChartList.Keys)
{
ChartList[k].Dispatcher.Invoke(
System.Windows.Threading.DispatcherPriority.Normal,
new Action(
delegate()
{
ChartList[k].Width = area.Width/totalColsForm;
ChartList[k].Height = area.Height/totalRowsForm;
ChartList[k].Left = area.X + ChartList[k].Width * currentCol;
ChartList[k].Top = area.Y + ChartList[k].Height * currentRow;
ChartList[k].doShow();
}
));
}
私はに苦しんでい部分が新しいアクションである()デリゲート(...)。コンパイラはそれを翻訳しようとする試みが一切好きではありませんでした。
F#のこのスニペットの翻訳は何ですか?
あなたは何を試みましたか?私は 'fun() - > ...'または 'Action(fun() - > ...)'を期待しています。 – Daniel
@ダニエル、まさに私は両方とも成功しなかった。私はエラーが発生しました "メソッド 'Invoke'に一致するオーバーロードはありません" =>それは問題であるデリゲートメソッドの翻訳です – Anass