今天做一个试验时,偶然发现了这样一个问题。
以SharpGL的示例项目SimpleDrawingSample为例。
给FormSimpleDrawingSample窗口里的label1控件添加如下的点击事件代码。
1 private void label1_Click(object sender, EventArgs e) 2 { 3 (new FormSimpleDrawingSample()).Show(); 4 }
就是再产生一个同主窗口一样的窗口。
然后,执行如下步骤。
双击启动SimpleDrawingSample.exe这个App。
再次双击,再启动一个App。
点击主窗口下方的文字,根据刚才写的代码,这会弹出一个和主窗口一样的窗口。
根据下图所示,缩放第一个App的主窗口。
你会发现下图所示的奇异情况。
稍微缩放下图所示左侧的窗口,一切恢复正常。
再试验几次,会发现同一AppDomainn内的SharpGL的FrameBuffer会相互影响?!