C# 删除wpf超链接时

C# 删除wpf超链接时,c#,wpf,C#,Wpf,我有一个需要许可证密钥才能注册的程序。菜单中并排有两个用于许可证的链接。一种是“立即购买”,它将用户带到网页获取许可证密钥。然后,用户单击另一个链接“输入许可证密钥”。验证许可证密钥后,“输入许可证密钥”链接在菜单中不再可见。我不知道如何让另一个链接“Buy Now”在验证许可证时不可见。我知道“Buy Now”链接名需要存在于许可证密钥验证的代码中,并且在许可证密钥==True时设置为visible==false,但到目前为止它还没有工作。如果有人能就如何使其工作提供建议,我将不胜感激。下面列

我有一个需要许可证密钥才能注册的程序。菜单中并排有两个用于许可证的链接。一种是“立即购买”,它将用户带到网页获取许可证密钥。然后,用户单击另一个链接“输入许可证密钥”。验证许可证密钥后,“输入许可证密钥”链接在菜单中不再可见。我不知道如何让另一个链接“Buy Now”在验证许可证时不可见。我知道“Buy Now”链接名需要存在于许可证密钥验证的代码中,并且在许可证密钥==True时设置为visible==false,但到目前为止它还没有工作。如果有人能就如何使其工作提供建议,我将不胜感激。下面列出了许可证功能代码。Buy Now链接名称为:\ u Buy Now MenuLink

 private void EnterLicenseKeyMenuItem_Click(object sender, RoutedEventArgs e)
    {
        LicenseKeyWindow window = new LicenseKeyWindow
                                      {
                                          Owner = this
                                      };
        if (window.ShowDialog() == true)
        {
            Title = Title.Replace(_UnregisteredText, null);
            _BtnSave.IsEnabled = true;
            _EnterLicenseKeyMenuItem.Visibility = Visibility.Collapsed;
            MessageBox.Show(this,
                            "You version of the program was registered successfully.",
                            "Success",
                            MessageBoxButton.OK,
                            MessageBoxImage.Information);
        }
    }
<Menu Background="#dce0de" >
                <MenuItem Name="_BuyNowMenuItem" />
            <Hyperlink TextDecorations="None"
                RequestNavigate="HandleRequestNavigate9" Name="h9" 
                NavigateUri=" http://www.background-magic-express.html ">
                    <Hyperlink.Style>
                        <Style TargetType="Hyperlink"
                                   BasedOn="{StaticResource {x:Type Hyperlink}}">
                            <Setter Property="Foreground" Value="Black"/>
                        </Style>
                    </Hyperlink.Style>
                    Buy Now                                     
            </Hyperlink>
            </Menu>
private void EnterLicenseKeyMenuItem\u单击(对象发送方,路由目标)
{
LicenseKeyWindow=新LicenseKeyWindow
{
所有者=此
};
if(window.ShowDialog()==true)
{
Title=Title.Replace(\u UnregisteredText,null);
_BtnSave.IsEnabled=true;
_EnterLicenseKeyMenuItem.Visibility=可见性。折叠;
MessageBox.Show(这个,
“您的程序版本已成功注册。”,
“成功”,
MessageBoxButton.OK,
MessageBoxImage.Information);
}
}
立即购买

在XAML中,
\u BuyNowMenuItem
不是超链接;它是一个空的
菜单项
,并且是在执行
操作时隐藏的菜单项。“立即购买”超链接名为“h9”,因此如果要隐藏它,必须执行
h9.Visibility=Visibility.Collapsed


我怀疑您打算在
菜单项
中包含
超链接
,但这不是您所做的,因为您在添加
超链接
之前关闭了
菜单项
元素。

是否
\u BuyNowMenuItem.Visibility=Visibility.collazed
不起作用?它不起作用。我还尝试了_BuyNowMenuItem.Visibility.Hidden,但也不起作用。嗯,应该可以。。。你确定没有在其他地方将其设置为可见吗?我将仔细查看代码并让你知道。它没有设置为可见。我将_BuyNowMenuItem放置在_EnterLicenseKeyMenuItem.Visibility代码行的正下方。我会将我的xaml代码添加到上面的代码中,可能有错误?非常感谢!有趣的是,一个人看东西却看不见。我感谢你的帮助!谢谢@道格拉斯·约翰逊,别忘了接受答案;)