如何在 Lubuntu 16.04.1 的 Mono 上使用 NativeMethods.GetUpdateRect?

How to use NativeMethods.GetUpdateRect on Mono on Lubuntu 16.04.1?

我正在尝试将一个很棒的 Windows Forms 程序移植到 Linux 并收到此错误:

System.EntryPointNotFoundException: GetUpdateRect
  at (wrapper managed-to-native)  
CDBurnerXP.Controls.NativeMethods:GetUpdateRectInternal  
(intptr,System.Drawing.Rectangle&,bool)  
at CDBurnerXP.Controls.NativeMethods.GetUpdateRect  
(System.Windows.Forms.Control cntl) [0x0000f] in  
<ce4ca0f630654e4c8c1f96509f1eae82>:0  

有没有办法支持 C# 调用
NativeMethods:GetUpdateRect Lubuntu 16.04.1 中午单声道?


编辑:
谢谢,knocte,您的评论。此编辑是引用试图引用此函数的代码位(因为注释不允许任何格式):

[DllImport("user32.dll", EntryPoint = "GetUpdateRect", CharSet = CharSet.Auto)]
private static extern IntPtr GetUpdateRectInternal(IntPtr hWnd, ref Rectangle r, bool eraseBackground);

嗯,答案是我问错了问题。
我应该问 "How can I replace ObjectListView.cs, which depends on non-portable Windows system calls, to port this program to Mono on Linux?"

ObjectListView 似乎在 Windows 上运行良好,但与 Linux 或 Mac 系统不兼容。里面有很好的讨论 ObjectListView discussion board。 Steve Hiner (2015-11-29) 的评论改变了我的搜索方向。 Steve 的方法是 "I already created a proxy that uses OLV on Windows and the stock listview on Linux and Mac. That would be one way OLV could provide pseudo mono support, it could just use the stock listview without any fancy features."

谢谢 knocte 让我朝着正确的方向思考。