如何在 Xamarin.forms C# 中隐藏布局?
How to hide out a layout in Xamarin.forms C#?
我有一个带开关控制的 Stacklayout,当开关值为 true 时我必须显示布局,如果值更改为 false 我必须隐藏布局。基于一些样本,我看到了如何隐藏一个按钮,但是为了隐藏一个布局我找不到一个。谁能建议我如何在 Xamarin.forms 中做到这一点。提前感谢那些帮助我解决问题的人。
Switch.cs
void switchControl(object sender, ToggledEventArgs e)
{
if (e.Value == false)
{
StackLayout view = this.FindByName<StackLayout>("employee");
//hide the layout gone or invisible
}else{
//show the layout visible
}
}
根据我们的讨论,我了解到您想 show/hide 通过在 XAML
中切换 Switch
布局。
为此,我们将使用 data-binding。
将您的 StackLayout.IsVisible
属性 设置为绑定到 Switch.IsChecked
,如下所示:
<StackLayout x:Name="employee" IsVisible="{Binding NameOfSwitch.IsChecked}">...</StackLayout>
您还注意到布局必须默认隐藏。为了实现这一点,我们将 Switch
设置为默认取消选中,如下所示:
<Switch android:checked="false" android:textOn="Yes" android:textOff="No" />
我有一个带开关控制的 Stacklayout,当开关值为 true 时我必须显示布局,如果值更改为 false 我必须隐藏布局。基于一些样本,我看到了如何隐藏一个按钮,但是为了隐藏一个布局我找不到一个。谁能建议我如何在 Xamarin.forms 中做到这一点。提前感谢那些帮助我解决问题的人。
Switch.cs
void switchControl(object sender, ToggledEventArgs e)
{
if (e.Value == false)
{
StackLayout view = this.FindByName<StackLayout>("employee");
//hide the layout gone or invisible
}else{
//show the layout visible
}
}
根据我们的讨论,我了解到您想 show/hide 通过在 XAML
中切换 Switch
布局。
为此,我们将使用 data-binding。
将您的 StackLayout.IsVisible
属性 设置为绑定到 Switch.IsChecked
,如下所示:
<StackLayout x:Name="employee" IsVisible="{Binding NameOfSwitch.IsChecked}">...</StackLayout>
您还注意到布局必须默认隐藏。为了实现这一点,我们将 Switch
设置为默认取消选中,如下所示:
<Switch android:checked="false" android:textOn="Yes" android:textOff="No" />