You do not need to do this in WPF.
WPF supports 16bpp grayscale images . I believe that they can be downloaded from a TIF file using the built-in TIFF decoder.
Edit in response to comment:
If you are unhappy with the default rendering in WPF, you can also use DirectX to directly display the surface. This (in this way) is best done using C ++ / CLI, but you can fully use C # using SlimDX.
A better approach is to use D3DImage . There is an introduction to using CodeProject . You should be able to directly port your OpenGL code, given the differences in DX. However, the good thing about D3DImage is that you no longer need to place a common control - you can put it directly in the WPF brush and use it anywhere in WPF.
Reed copsey
source share