В настоящее время я разрабатываю приложение WPF в .NET версии 4.0.WPF Visibility Issue Windows Server 2003
У меня есть две сетки, которые показаны скрытые на основе свойства в моем ViewModel:
<Grid Name="Results" Grid.Column="1" Visibility="{Binding ShowSearch, Converter={StaticResource Bvc}}">
<Grid Name="ProvisionalStreet" Grid.Column="1" Visibility="{Binding ShowProvisional, Converter={StaticResource Bvc}}">
Когда пользователь нажимает на кнопку DelegateCommand делает следующее:
this.ShowProvisional = true;
this.ShowSearch = false;
ShowProvisional сеттер:
set
{
this.showProvisional = value;
this.RaisePropertyChanged(() => this.ShowProvisional);
}
ShowSearch setter:
set
{
this.showSearch = value;
this.RaisePropertyChanged(() => this.ShowSearch);
}
Код отлично работает на моем локальном компьютере (Windows 7) в Visual Studio 2012 или когда я дважды щелкаю исполняемый файл в каталоге сборки. Однако наши тестеры регистрируются в Citrix, который является средой Windows Server 2003, и когда они нажимают кнопку, ничего не происходит.
Однако, если я присваиваю Visibility="{Binding ShowProvisional, Converter={StaticResource Bvc}}"
ярлыку или текстовое поле, например, оно работает на них.
Любые идеи? В значительной степени та же проблема, что и WPF issues with Windows Server 2003, но ответов не было.
Высокую оценку
EDITED:
<BooleanToVisibilityConverter x:Key="Bvc" />
Отредактировано:
[ImportingConstructor]
public GazetteerView(GazetteerViewModel viewModel)
: this()
{
this.DataContext = viewModel;
}
Ну, может быть не связано, но как ваш 'RaisePropertyChanged' выглядеть? И что вы подразумеваете под «Однако, если я назначаю« Видимость = »...« «»? – JeffRSon
@ Андрей Рейнер, я второй Джефф для запроса RaisePropertyChanged - просьба указать. Также мы можем увидеть код для конвертера Bvc? – zaitsman
Мой опыт работы с WPF на XP заставляет меня думать, что это ошибка системы/драйвера видеоадаптера. Может быть не связано, но вы можете попробовать: http: //support.microsoft.com/kb/955692 – Bolu