Ich habe das folgende XAML-Konstrukt.UWP Template10 FontIcon Element ausblenden, wenn das Menü "IsOpen"
<Controls:HamburgerMenu x:Name="MyHamburgerMenu">
<Controls:HamburgerMenu.PrimaryButtons>
<Controls:HamburgerButtonInfo x:Name="searchButton">
<FontIcon x:Name="searchButtonIcon" Width="48"
Height="48"
Glyph=""
Visibility="{Binding IsOpen, ???"/>
<AutoSuggestBox PlaceholderText="Search" QueryIcon="Find"/>
<Controls:HamburgerButtonInfo x:Name="searchButton">
</Controls:HamburgerMenu.PrimaryButtons>
</Controls:HamburgerMenu>
Wenn das Menü "IsOpen", das FontIcon-Element sollte zusammengebrochen werden. Wenn das Menü nicht "IsOpen" ist, sollte das FontIcon-Element sichtbar sein.
Die Groove Music App hat ein solches Verhalten (siehe Bild in groove music app with opened menu). Welche sind die Parameter für die Bindung? Eine Erklärung zum Verbergen der Hamburger-Taste ist in UWP Template10 Hide hamburger button when menu is open beschrieben.
Ich denke, dass es ein Template10 Verhalten ist. Ich habe Folgendes in der Shell.xaml-Seite von template10 versucht.
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<TextBlock x:Name="txt-1" Text="{Binding IsOpen, ElementName=MyHamburgerMenu}" Grid.Row="0"/>
<Controls:HamburgerMenu x:Name="MyHamburgerMenu" Grid.Row="1">
<Controls:HamburgerMenu.PrimaryButtons>
<Controls:HamburgerButtonInfo>
<TextBlock x:Name="txt-2" Text="{Binding IsOpen, ElementName=MyHamburgerMenu}"/>
</Controls:HamburgerButtonInfo>
</Controls:HamburgerMenu.PrimaryButtons>
</Controls:HamburgerMenu>
</Grid>
Der Textblock txt-1 zeigt den korrekten Zustand der IsOpen Eigenschaft HamburgerMenu während des Textblock txt-2 leer ist.
Das Valueconverter ist nicht das Problem. Ich möchte wissen, wie man die Sichtbarkeitseigenschaft von FontIcon, die davon abhängig ist, auf den übergeordneten Controls: HamburgerMenu.IsOpen-Status setzt? –
Sie sollten in der Lage sein, an einen ElementName zu binden, zum Beispiel Visibility = "{Binding ElementName = MyHamburgerMenu, Pfad = IsOpen, Converter = {StaticResource MyVisibilityConverter}}" /> –
Hallo Ken, danke für deine Mühe. Ich habe die obige Problembeschreibung erweitert. –