如何将InputTrasparent设置为true(对于父级而不是对于子级)

时间:2019-06-28 07:45:52

标签: xaml layout xamarin.forms

我在其中有一个堆栈布局和一个按钮。我想单击该堆栈布局,然后单击该按钮。

我尝试为StackLayout设置InputTrasparent为true,然后为button设置为false。它不起作用。在父级应用的所有内容均设置为其中所有子级。

<StackLayout InputTrasparent="True">
    <Button Text="Submit" InputTrasparent="False"/>
</StackLayout>

我希望可以单击按钮,并且StackLayout后面的元素也应该可以单击。

3 个答案:

答案 0 :(得分:1)

布局具有属性CascadeInputTransparent。如果为true,则子视图继承其父级的输入透明性。设置为false时,子视图不会继承设置了级联的布局的输入透明度。

https://docs.microsoft.com/en-us/dotnet/api/xamarin.forms.layout.cascadeinputtransparent?view=xamarin-forms

答案 1 :(得分:0)

InputTransparent获取或设置一个值,该值指示该元素是否应参与用户交互周期。 您将StackLayout InputTransparent设置为true,这意味着“不允许该视图接收任何输入”。如果您将其设置在父视图上,则其任何子视图都不应该受到触摸。

答案 2 :(得分:0)

使用CascadeInputTransparent

<StackLayout InputTrasparent="True" CascadeInputTransparent="False">
   <Button Text="Submit"/>
</StackLayout>