我收到错误'无法隐式转换类型'System.Windows.Forms.DialogResult'到System.Windows.MessageBoxResult'
起初我以为这只是一个缺少的导入,所以我放入了导入的System.Windows.Forms,但它无济于事,因为这样做会在我的实际消息框中引发错误,即'MessageBox'是'系统之间的一个不明确的引用. Windows.MessageBox'和'System.Windows.Forms.MessageBox'(这不是很难弄清楚:P)但原始消息保持不变.
private void DisplayOnWebsiteChecked(Object sender, EventArgs e)
{
var departments = model.Name;
var departmentChildren = model.Children;
var messagebox = MessageBox.Show("Do you wish to hide all sub deparments and products.",
"List of Box",
MessageBoxButton.YesNo);
if (messagebox = System.Windows.Forms.DialogResult.Yes)
{
if (departmentChildren != null)
{
int zeroChildren = 0;
if (departmentChildren.Count.Equals(zeroChildren)) ;
{
foreach (Department Children in departmentChildren)
Children.IsVisibleOnWebsite = false;
}
}
}
else
return;
}
Run Code Online (Sandbox Code Playgroud)
我已经包含了整个方法,只是因为你需要任何东西.
鉴于您现在已经解释过这是一个WPF应用程序,如果您正在使用,则System.Windows.MessageBox.Show应该进行比较System.Windows.MessageBoxResult.
基本上,如果你正在做WPF你几乎肯定不希望任何的提及System.Windows.Forms,反之亦然.(我很惊讶这完全是编译 - 你有两个组件的参考吗?这通常是一个坏主意......)
此外,您需要==用于比较,而不是=(赋值)
var result = MessageBox.Show(...);
if (result == MessageBoxResult.Yes)
{
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3695 次 |
| 最近记录: |