Dar*_*ter 2 c# xaml xamarin.forms
在 XAML 页面的代码隐藏中,我正在检查模型中的文本字段是否为空,如果不是,则使用该字段更新标签文本属性,如果为空,我想将其从 XAML 中完全删除。
起初,我尝试将 IsVisible 设置为 false,将 HeightRequest 设置为 0,但我仍然可以看到 stackLayout 中标签所在的空间,因此我尝试从主堆栈中删除包含标签的内部堆栈
TopStack.Children.Remove(addressStack);
Run Code Online (Sandbox Code Playgroud)
但是我仍然可以看到被移除的堆栈所在的空间。
我有没有办法完全删除内部堆栈,包括它会占用的空间?
您可以使用theStack.Children.Remove(textField);来从堆栈中删除元素。
如果您知道元素在堆栈中的位置,则可以使用 remove at
theStack.Children.RemoveAt(positionInStack);
Run Code Online (Sandbox Code Playgroud)
如果要删除内部堆栈(它是外部堆栈的子项和文本字段的父项),请使用
outerStack.Children.Remove(textField.parent);
Run Code Online (Sandbox Code Playgroud)
我希望这些信息对你有帮助!