質問

というまったく新しい機能言語にしていると思うの維持、他の人のコードで多くのF#.誰でもできるのでお知見。

        let mtvCap = Rendering.MTViewerCapture(mtViewer)
        mtvCap.GetCapture()
        mtvCap.ToWpfImage()
        grid.Children.Add(mtvCap.ImageElement)

MTViewer.ImageViewerはタイプシステム。Windowsの場合です。制御できます。画像グリッドは、システム。Windowsの場合です。制御できます。グリッド

再度エラー:のint型に対応していないタイプのユニット

役に立ちましたか?

解決

F#せきを無視し戻り値です。タイプ unit F#'s版 void.ではエラーとは本質的に

私の期待を決して返すもので、int値を返しま

または逆行するものとなっている。私が正しく読みこのエラーメッセージを表示します。

何が起こっては、次のいずれかになります

  1. の方法であるという期待 int 戻り値は方法 Add voidを返しますがF#ううえでは、戻り値
  2. 本手法では入力として unitAdd は戻る int F#必要では無視します。
  3. GetCapture または ToWpfImage 返却値にする必要のある明示的に扱っている。

最後の2例できることにより、これを解決の値の ignore 機能

mtvCap.GetCapture() |> ignore
mtvCap.ToWpfImage() |> ignore
grid.Children.Add(mtvCap.ImageElement) |> ignore

掘周辺のビットだと思い#2の問題で UIElementCollection.Add を返します。 int 値とします。みの変更に最終ラインからというこ

grid.Children.Add(mtvCap.ImageElement) |> ignore

他のヒント

私はF#について非常によく知っていませんが、「ユニット」は「void」と言う方法です。したがって、私はあなたが1つの関数の「返品値」を割り当てようとしていると思います、バレイブルに。それは最も可能性の高い候補者になります、この線は次のとおりです。

let mtvCap = Rendering.MTViewerCapture(mtViewer)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top