поддерживает ли Xamarin.Forms Style переменную / параметр из примененной цели? - PullRequest
0 голосов
/ 05 февраля 2020

У меня сложный visual state, и я не люблю его копировать куда угодно, поэтому помещаю его в ResourceDictionary

, но некоторое значение setter следует заменить реальным значением от цели:

например: {Parameter1} и {Parameter1} - это вещи, которые я надеюсь заменить.

<ResourceDictionary>                
            <Style x:Key="ToggleButton" TargetType="button:SfButton">
                <Setter Property="ShowIcon" Value="True"/>
                <Setter Property="IsCheckable" Value="True"/>
                <Setter Property="VisualStateManager.VisualStateGroups">
                    <VisualStateGroupList x:Name="CommonStates">
                        <VisualStateGroup>
                            <VisualState x:Name="Unchecked">
                                <VisualState.Setters>
                                    <Setter Property="ImageSource" Value="{mb:ImageAsset Source={Parameter1} }" />
                                    <Setter Property="BackgroundColor" Value="#3900" />
                                </VisualState.Setters>
                            </VisualState>
                            <VisualState x:Name="Checked">
                                <VisualState.Setters>
                                    <Setter Property="ImageSource" Value="{mb:ImageAsset Source={Parameter2} }" />
                                    <Setter Property="BackgroundColor" Value="#6090" />
                                </VisualState.Setters>
                            </VisualState>
                        </VisualStateGroup>
                    </VisualStateGroupList>
                </Setter>
            </Style>
        </ResourceDictionary>

, но в экземпляре элемента управления нет способа передать эти аргументы:

 <button:SfButton Style="{StaticResource ToggleButton, ??Parameter1=xxx?? }" Text="xx"/>

Так есть ли еще способ достичь этого?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...