Xaml 如何将Visual State Manager与Button.ImageSource属性一起使用

Xaml 如何将Visual State Manager与Button.ImageSource属性一起使用,xaml,xamarin,xamarin.forms,Xaml,Xamarin,Xamarin.forms,我正在尝试设置一个切换按钮,如本教程所示: 但是,我的按钮里面有一个字体图标。带有字体本身的按钮工作正常。问题是当我尝试从可视状态管理器设置ImageSource属性时 代码如下: <FontImageSource x:Key="fileImageSource" Glyph="&#xF0E6;" Color="Gray" FontFamily="{ DynamicResource MaterialIconsFontFamily }" Size="28" />

我正在尝试设置一个切换按钮,如本教程所示:

但是,我的按钮里面有一个字体图标。带有字体本身的按钮工作正常。问题是当我尝试从可视状态管理器设置ImageSource属性时

代码如下:

<FontImageSource x:Key="fileImageSource" Glyph="&#xF0E6;"
  Color="Gray"
  FontFamily="{ DynamicResource MaterialIconsFontFamily }"
  Size="28" />

<Button Margin="20,10,20,0" 
    Text="Email Disabled (click to enable)" 
    FontFamily="{ DynamicResource MaterialIconsFontFamily }"
    Style="{StaticResource PaynuverDisabledButtonStyle}"
    ImageSource="{StaticResource fileImageSource}">
</Button>

<local:ToggleButton Toggled="OnBoldButtonToggled"
   Margin="20,10,20,0"
   FontFamily="{ DynamicResource MaterialIconsFontFamily }">
   <VisualStateManager.VisualStateGroups>
    <VisualStateGroup Name="ToggleStates">
        <VisualState Name="ToggledOff">
            <VisualState.Setters>
                <Setter Property="Text" Value="Email Disabled (click to enable)" />
                <Setter Property="Style" Value="{StaticResource DisabledButtonStyle}" />
                <Setter Property="ImageSource" Value="{StaticResource fileImageSource}" />
            </VisualState.Setters>
        </VisualState>

        <VisualState Name="ToggledOn">
            <VisualState.Setters>
                <Setter Property="Text" Value="Email Enabled" />
                <Setter Property="Style" Value="{StaticResource ButtonStyle}" />
            </VisualState.Setters>
        </VisualState>
      </VisualStateGroup>
    </VisualStateManager.VisualStateGroups>
</local:ToggleButton>


对于以下代码,我得到一个错误:“ToggleButton.ImageSourceProperty的PropertyName不是ImageSource”

据我所知,您正在尝试创建一个自定义控件“ToggleButton”

ToggleButton.ImageSourceProperty的PropertyName不是ImageSource

此消息警告您缺少可绑定属性,或者属性调用中存在简单错误


顺便问一下,你试过用吗

让它和代码一起工作。还想知道为什么它在XAMLI中不起作用是一个编译错误吗?我在我这边使用了你的代码,但我没有看到错误。我使用最新版本的Xamarin.forms.no,这是一个运行时错误。我会看看我是否可以在一个示例项目中尝试它。好的,一旦你可以在这里上传一个示例,我们将检查它。