gpt4 book ai didi

c# - 无法将 DialogResult 隐式转换为 MessageBoxResult

转载 作者:行者123 更新时间:2023-11-30 19:44:19 24 4
gpt4 key购买 nike

我收到错误“无法将类型‘System.Windows.Forms.DialogResult’隐式转换为 System.Windows.MessageBoxResult”

起初我以为这只是缺少导入,所以我放入了导入的 System.Windows.Forms,但它无济于事,因为这样做会在我的实际消息框上抛出一个错误,即“MessageBox”是一个不明确的引用“System.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;
}

我已经包含了整个方法,以防您需要它的任何内容。

最佳答案

鉴于您现在已经说明这是一个 WPF 应用程序,如果您使用的是 System.Windows.MessageBox.Show您应该与 System.Windows.MessageBoxResult 进行比较.

基本上,如果您正在执行 WPF,您几乎肯定不希望任何提及System.Windows.Forms,反之亦然。 (我很惊讶这是在编译 - 你有两个程序集的引用吗?这通常是个坏主意......)

另外,需要使用==进行比较,而不是=(赋值)

var result = MessageBox.Show(...);

if (result == MessageBoxResult.Yes)
{
...
}

关于c# - 无法将 DialogResult 隐式转换为 MessageBoxResult,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12711257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com