我試圖在 UWP 中隱藏元素,但我無法保留它的空間。
我試圖更改可見性,但沒有選項可以設定Visibility為Hidden.
我只能設定Visibility為Visibleor Collapsed。
有人知道如何在 UWP 中執行此操作嗎?
uj5u.com熱心網友回復:
一種解決方案是在禁用控制元件時將畫筆修改為空。
如果是通用控制元件,可以在VisualStateManager禁用時修改控制元件的樣式。
以按鈕控制元件為例。
- 覆寫按鈕控制元件的樣式,修改中的畫筆為空
<VisualState x:Name="Disabled">。
<Page.Resources>
<Style x:Key="ButtonStyle1" TargetType="Button">
<Setter Property="Background" Value="{ThemeResource ButtonBackground}"/>
...
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<ContentPresenter x:Name="ContentPresenter" AutomationProperties.AccessibilityView="Raw" Background="{TemplateBinding Background}" BackgroundSizing="{TemplateBinding BackgroundSizing}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" ContentTemplate="{TemplateBinding ContentTemplate}" CornerRadius="{TemplateBinding CornerRadius}" Content="{TemplateBinding Content}" ContentTransitions="{TemplateBinding ContentTransitions}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter" Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter" Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter" Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" />
</ObjectAnimationUsingKeyFrames>
...
<Button Style="{StaticResource ButtonStyle1}" x:Name="myButton" .../>
當您需要隱藏它時,將控制元件設定為禁用。
myButton.IsEnabled = false;
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/524418.html
標籤:C#xmluwp赢得通用应用程序windows-10-通用
上一篇:如果我開發了一個iOS應用程式,其他人如何在不將應用程式發布到應用商店的情況下使用它?
下一篇:計數值排除重復ID
