WPF AlternateContent не работает
Я пытаюсь показать различные элементы представления в элементе управления WPF в конфигурации отладки и выпуска для целей тестирования. Я использовал этот пост в качестве руководства:Есть ли в XAML директива условного компилятора для режима отладки? (ТАК)
Чтобы протестировать его, я создал решение VS2013 с одним проектом приложения WPF, которое называется TestingAlternateContent. Внутри моего AssemblyInfo.cs я добавил следующий код:
#if DEBUG
[assembly: XmlnsDefinition("debug-mode", "TestingAlternateContent")]
#endif
В моем MainWindow.xaml я создал простой пример кода для проверки этого поведения следующим образом:
<Window x:Class="TestingAlternateContent.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:debug="debug-mode"
mc:Ignorable="mc debug"
Title="MainWindow" Height="350" Width="525">
<Grid>
<mc:AlternateContent>
<mc:Choice Requires="debug">
<TextBlock Text="Debug mode!!" />
</mc:Choice>
<mc:Fallback>
<TextBlock Text="Release mode here!" />
</mc:Fallback>
</mc:AlternateContent>
</Grid>
</Window>
Во время тестирования я всегда вижу окно с «Режимом выпуска здесь!» сообщение, независимо от того, какую конфигурацию (Debug, Relase) я использую. Я проверил, что AssemblyInfo #if DEBUG работает нормально, соответственно меняясь при переключении между конфигурациями Debug / Release. Я тестировал тот же код под VS2008 / VS2013 с версиями .NET Framework 3.5 / 4.5, и ни один из них не работал. Что мне не хватает? Кто-нибудь знает, что здесь не так или может опубликовать рабочий код в качестве ссылки?