Кнопка Backstage не закрывает Backstage

В Office 2010 при нажатии кнопки Backstage Backstage автоматически закрывается. Например, у меня есть Backstage с кнопками New, Open и Save.

Когда я нажимаю кнопку, Backstage не закрывается — я полагаю, это неправильное поведение. Как я могу позволить Fluent-Ribbon правильно обрабатывать Backstage?

Я использую текущую версию 2.0 от ноября 2010 г. (http://fluent.codeplex.com/releases/view/55556).


person nyn3x    schedule 10.02.2012    source источник


Ответы (2)


Похоже, это дефект ленты, который исправлен в последней версии управления звуком, но еще не в последней выпущенной версии.

На данный момент вы можете обойти это, используя следующие

// During initialisation
myRibbon.Menu.AddHandler(PopupService.DismissPopupEvent, (DismissPopupEventHandler)OnPopupDismiss);

private void OnPopupDismiss(object sender, DismissPopupEventArgs e)
{
    var backstage = Menu as Backstage;
    if (backstage != null)
    {
        backstage.IsOpen = false;
    }
}
person Justin    schedule 12.06.2012
comment
Есть ли планы на новый релиз? Мне не хочется компилировать исходники самостоятельно. - person nyn3x; 13.06.2012
comment
@ nyn3x Я понятия не имею (я не связан с проектом), однако вам не нужно изменять исходный код Fluent, чтобы применить это исправление — просто примените его к своему экземпляру ленты (где myRibbon — ваша лента пример) - person Justin; 13.06.2012

В Ribbon.xml требуемый атрибут isDefinitive=""true"" не уверен, как Fluent-Ribbon обрабатывает это, но он должен иметь эквивалент

person TFD    schedule 21.02.2012
comment
Ну, Fluent:Button также имеет атрибут IsDefinitive; но установка этого значения на true, похоже, не имеет никакого эффекта. - person nyn3x; 24.02.2012