无法应用C#运算符==dlg.showDialog==System.Windows.Forms

无法应用C#运算符==dlg.showDialog==System.Windows.Forms,c#,.net,wpf,visual-studio,C#,.net,Wpf,Visual Studio,在WPF C#项目的以下if条件块上,语法中收到的错误:运算符“==”不能应用于bool?和System.Windows.Forms.DialogResult的操作数“ 代码有什么问题?我使用的是VS2013如果您试图在代码中混合使用WPF和Windows窗体,您不应该这样做 在WPFShowDialog中,方法返回bool?(如果dlg是DialogBox或DialogWindow) 根据,WPF ShowDialog返回bool,根据WinForms返回DialogResult 您似乎在混合

在WPF C#项目的以下if条件块上,语法中收到的错误:运算符“==”不能应用于bool?和System.Windows.Forms.DialogResult的操作数“


代码有什么问题?我使用的是VS2013

如果您试图在代码中混合使用WPF和Windows窗体,您不应该这样做

在WPF
ShowDialog
中,方法返回
bool?
(如果
dlg
DialogBox
DialogWindow

根据,WPF ShowDialog返回bool,根据WinForms返回DialogResult


您似乎在混合UI组件。

什么类型是
dlg
?(顺便说一句,WPF不是WinForms,你似乎混淆了两者)。你的逻辑是什么?
 if (dlg.ShowDialog()   == System.Windows.Forms.DialogResult.OK)
            {
               Logic......
            } 
if (dlg.ShowDialog() == true) //or ==false, or ==null
{
    //logic
}