NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Pelpet
Tvůrce
Avatar
Pelpet:10.7.2014 19:13

Zdravím, čelím zřejmě bugu WPF, podle článků co jsem našel na internetu ohledně tématu. Mám vlastní RoutedUICommandy na které volají položky kontextového menu. Když kliknu pravým tlačítkem, menu se objeví, vše v pořádku. Na tlačítku mám ale handler, který otevírá menu i po levém kliknutí. V tomto případě je celé zamrzlé.

<Button.ContextMenu>
    <ContextMenu>
        <MenuItem Command="local:Command.AccountSettings" />
        <MenuItem Command="local:Command.AccountLogout" />
    </ContextMenu>
</Button.ContextMenu>

CommandBindings:

<Window.CommandBindings>
    <CommandBinding Command="local:Command.AccountSettings" Executed="OnCommandExecuted" />
    <CommandBinding Command="local:Command.AccountLogout" Executed="OnCommandExecuted" />
</Window.CommandBindings>

Na googlu jsem našel, že mám odchytávat event CanExecute a nastavovat v něm vlastnost CanExecute na true, nicméně to nepomohlo. Stejně tak nepomohlo přesunout bindy z okna na samotné tlačítko. Také jsem našel, že to prý způsobuje nějaký problém s focusem a lze to obejít nějakým bindem focusu, to ale také nevyřešilo můj problém.

Menu otevírám obvyklým způsobem:

(sender as Button).ContextMenu.IsOpen = true;

Předem díky za reakce.

Editováno 10.7.2014 19:14
 
Odpovědět
10.7.2014 19:13
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.