none
window弹出框问题,为啥多点后有时弹出框会变成黑屏? RRS feed

  • 问题

  •  

    你好,在一个UI界面我定义了一个Popupwindow,调用弹出方法的代码如下,有时候多点了弹出框会变成黑屏,我把弹出框最大化后再还原成原来大小黑屏就好了,请问这可能是什么原因?我多次点击不同控件弹出框的对象是同一个,和这个有关系吗?但是每次都会把弹出框里面的内容重新赋值,不知道为什么有时候会出现黑框弹出的现象,这个现象也不是常见,谁知道原因啊,谢谢!

    InfoPopupWindow popupWin = new InfoPopupWindow();
            private void Canvas_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
            {
                UIElement inputDevice = (UIElement)e.Source;


                MfcControl hitMfc = inputDevice as MfcControl;
                if (hitMfc != null)
                {
                    popupWin.DeviceName = hitMfc.Name;
                    string mfcName = hitMfc.Tag + "";
                    SetPopupMFCData(mfcName,hitMfc.DataFromProcess);
                    popupWin.Left = Canvas.GetLeft(inputDevice);
                    popupWin.Top = Canvas.GetTop(inputDevice);
                    popupWin.ShowInputArea = hitMfc.ShowInputArea;
                    popupWin.Owner = AppWindow.GetWindow();
                    popupWin.ShowDialog();


                }
                else
                {
                    PcControl hitPc = inputDevice as PcControl;
                    if (hitPc != null)
                    {
                        popupWin.DeviceName = hitPc.Name;
                        string pcName = hitPc.Tag + "";

                        SetPopupPCData(pcName,hitPc.DataFromProcess);
                        popupWin.Left = Canvas.GetLeft(inputDevice);
                        popupWin.Top = Canvas.GetTop(inputDevice);
                        popupWin.ShowInputArea = hitPc.ShowInputArea;
                        popupWin.Owner = AppWindow.GetWindow();
                        popupWin.ShowDialog();
                    }
                }
                e.Handled = true;
            }

                        
    2012年3月7日 6:08

答案

全部回复