У меня есть TabControl со многими привязками TabItems к ViewModel, который имеет свойства для каждой видимости TabItem.Silverlight TabItem Видимость не меняется
<sdk:TabControl>
<sdk:TabItem Name="Inventory" Header="Inventory"
Style="{StaticResource TabItemStyle}"
Visibility="{Binding Permissions.Inventory,
Converter={StaticResource PermissiveVisibilityConverter},
ConverterParameter='Viewer'}"
DataContext="{Binding VM}" />
</sdk:TabControl>
Все элементы TabItems по умолчанию имеют видимость свернуть. Но когда виртуальная машина изменяет TabItem на Visible, она не работает до тех пор, пока вы не нажмете мышь на элемент управления ...
Даже если я программным образом устанавливаю видимость с помощью кнопки, она ведет себя одинаково!
Я проверил, есть ли свойства виртуальной машины, уведомляющие пользовательский интерфейс, и они связаны с NotifyOnPropertyChanged. И если я привяжу данные к видимости кнопки, это будет просто отлично ... Это просто теги TabItems, которые, похоже, имеют ошибку.
Есть ли способ получить пользовательский интерфейс TabItem? Или обход для этого?
Спасибо!
Какую версию SL вы используете? Измените свойство, измененное как на свойство Permissions, так и на свойство Inventory? –
Silverlight 5. Да для обоих, и я проверил, обновляется ли ViewModel, если TabItem видит это изменение, и он делает это. Он просто не обновляет пользовательский интерфейс. – tcables
Хммммм очень странно! Я знаю, что в Tab Control есть несколько ошибок, не глядя на меня, единственное, что я могу предложить, это загрузить исходный код инструментария из кода и попытаться выяснить, обрабатывает ли элемент управления вкладками внутреннюю видимость элементов табуляции? Извините, у меня нет простого ответа для вас. –