Xamarin.forms 如何在许多条目中聚焦和取消聚焦

Xamarin.forms 如何在许多条目中聚焦和取消聚焦,xamarin.forms,Xamarin.forms,我有这个看法 <Entry Placeholder="Name" WidthRequest="200" Text=""> <Entry.Triggers> <EventTrigger Event="Focused"> <local:SizeText />

我有这个看法

<Entry Placeholder="Name" WidthRequest="200" Text="">
                <Entry.Triggers>
                                       <EventTrigger Event="Focused">
                                            <local:SizeText />
                                       </EventTrigger>
                                    </Entry.Triggers>
            </Entry>
我的工作不适合我,我怎样才能提升自己?

试试这个:


我不确定您想要哪种解决方案,有两种方法可以更改条目的背景颜色

一个是设计方法,使用可以很容易做到,看看这个

一个简单的触发器可以纯粹用XAML表示,向控件的触发器集合添加一个触发器元素。此示例显示了一个触发器,该触发器在接收焦点和取消焦点时更改条目背景颜色:

<Entry Placeholder="Trigger effect">
    <Entry.Triggers>
        <Trigger TargetType="Entry"
                    Property="IsFocused"
                    Value="True">
            <Setter Property="BackgroundColor"
                    Value="Yellow" />
            <!-- multiple Setters elements are allowed -->
        </Trigger>
        <Trigger TargetType="Entry"
                    Property="IsFocused"
                    Value="False">
            <Setter Property="BackgroundColor"
                    Value="Gray" />
        </Trigger>
    </Entry.Triggers>
</Entry>
我将展示它们的效果,在第一次点击它们之前,它们之间会有一些不同。详情如下:


注意:选择哪一个取决于您的场景。

不工作意味着出了什么问题?
<Entry Placeholder="Trigger effect">
    <Entry.Triggers>
        <Trigger TargetType="Entry"
                    Property="IsFocused"
                    Value="True">
            <Setter Property="BackgroundColor"
                    Value="Yellow" />
            <!-- multiple Setters elements are allowed -->
        </Trigger>
        <Trigger TargetType="Entry"
                    Property="IsFocused"
                    Value="False">
            <Setter Property="BackgroundColor"
                    Value="Gray" />
        </Trigger>
    </Entry.Triggers>
</Entry>
<Entry Placeholder="Focused / Unfocused method" Focused="Entry_Focused" Unfocused="myentry_Unfocused"/>
private void Entry_Focused(object sender, FocusEventArgs e)
{
    var entry = sender as Xamarin.Forms.Entry;
    entry.BackgroundColor = Color.Red;
}

private void myentry_Unfocused(object sender, FocusEventArgs e)
{
    var entry = sender as Xamarin.Forms.Entry;
    entry.BackgroundColor = Color.Gray;
}