Aký je najlepší spôsob, ako prekryť obsadené zobrazenie taktento používateľ nemôže komunikovať s formulárom ?. Vyskúšali sme rôzne spôsoby, ako je položenie hraničnej vrstvy na hornú časť formulára a pozadia na rozostrenie svetla. Tiež nastavenie kurzora na obsadenie tak, aby používateľ nemohol Interaktovať. Existujú nejaké vzorové projekty?
Ale tu je problém. Nastavenie kurzora na zaneprázdnené nie sme schopní komunikovať s formulárom, ktorý je na zadnej strane, ale ak cez tabbing (stlačenie tab) môžeme ísť na ovládacie prvky vo formulári a potom s tým komunikovať.?
Takže niekto už predtým čelil tomuto problému?
Vďaka!
odpovede:
1 pre odpoveď č. 1Pri budovaní som mal rovnaký problém vlastné vyskakovacie okno ktorý obsahoval prekrytie kontrolných prvkov za ním. Nakoniec som to vyriešil tým, že urobil UserControl svoj vlastný Focus Range a vypnutie TabNavigation počas spúšťania
<local:SomeBusyView FocusManager.IsFocusScope="True">
<local:SomeBusyView.Style>
<Style TargetType="{x:Type local:SomeBusyView}">
<Style.Triggers>
<DataTrigger Binding="{Binding IsBusy}" Value="True">
<Setter Property="KeyboardNavigation.TabNavigation" Value="None" />
</DataTrigger>
</Style.Triggers>
</Style>
</local:SomeBusyView.Style>
</local:SomeBusyView>
2 pre odpoveď č. 2
BusyIndicator je účelová kontrola, ktorá vám to všetko robí.