[英]Creating own toggle button in WP8?
我需要将具有小部件的Android应用程序移植到WP8。
为此,我需要创建自己的切换按钮(用户控件)。 因此,我刚刚创建了一个名为MyToggleButton的Button子类,并使用标准的回调函数来更改按钮的图像和文本。
要捕获单击,我使用onMouseEnter
,单击完成后,即再次按下鼠标按钮,则使用onMouseLeave
这样就可以正常工作-问题是单击onMouseEnter
似乎被延迟了一点,并且此按钮以最小的延迟(而不是普通按钮)更改ButtonImage(我将Visual Studio Express 2012与Emulator一起使用,因为我还没有真正的手机进行测试)
虽然我发现了在XAML中创建用于指定批次的用户控件的其他方法,但是我发现上述仅使用标准方法的方法更加容易。 我只是不确定,这种最小延迟来自何处。
在第一种情况下,您可能不应该进行自定义切换。 从Android移植应用程序并不意味着您也必须移植其图形。 它们只是不共享相同的设计语言。 您可能应该坚持使用本机WP8切换键。
但是,如果您确实要创建自定义复选框/切换,则应选中此项 。 这是针对WP7所做的,但也适用于WP8。
这是一个使用图像的简化的“切换”按钮。 基于CheckBox
<Style TargetType="{x:Type CheckBox}" >
<Setter Property="Template" >
<Setter.Value>
<ControlTemplate TargetType="{x:Type CheckBox}">
<Grid>
<ContentPresenter x:Name="Part_Content" />
<Image Name="image" Source="/WpfApplication4;component/Images/avatar63.jpg" />
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="true" >
<Setter TargetName="image" Property="Source" Value="/WpfApplication4;component/Images/imagesCA7JZMMY.jpg"/>
</Trigger>
<Trigger Property="IsChecked" Value="False" >
<Setter TargetName="image" Property="Source" Value="/WpfApplication4;component/Images/avatar63.jpg"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.