Windows phone 7 绑定到对象的自定义切换开关
我试图创建一个toggleswitch,它将datatemplate中的多行绑定到单个对象的不同属性。这些切换开关将位于列表框内 下面我的xaml代码显示了当前的toggleswitch模板。在下面的代码中,只有标题正确绑定。我需要另外两行(在ContentTemplate中)和toggleswitch本身绑定到对象的布尔属性Windows phone 7 绑定到对象的自定义切换开关,windows-phone-7,silverlight-toolkit,Windows Phone 7,Silverlight Toolkit,我试图创建一个toggleswitch,它将datatemplate中的多行绑定到单个对象的不同属性。这些切换开关将位于列表框内 下面我的xaml代码显示了当前的toggleswitch模板。在下面的代码中,只有标题正确绑定。我需要另外两行(在ContentTemplate中)和toggleswitch本身绑定到对象的布尔属性 <DataTemplate> <toolkit:
<DataTemplate>
<toolkit:ToggleSwitch Header="{Binding Property1}" Width="450">
<toolkit:ToggleSwitch.HeaderTemplate>
<DataTemplate>
<ContentControl FontWeight="Black" FontSize="40" Foreground="{StaticResource PhoneForegroundBrush}" Content="{Binding}" VerticalAlignment="Top" />
</DataTemplate>
</toolkit:ToggleSwitch.HeaderTemplate>
<toolkit:ToggleSwitch.ContentTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Text="{Binding Property2}" FontSize="32" FontWeight="Light" Foreground="{StaticResource PhoneAccentBrush}" />
<TextBlock Text="{Binding Property3}" FontSize="{StaticResource PhoneFontSizeSmall}" Foreground="{StaticResource PhoneSubtleBrush}" />
</StackPanel>
</DataTemplate>
</toolkit:ToggleSwitch.ContentTemplate>
</toolkit:ToggleSwitch>
</DataTemplate>
属性1、2和3也将具有自定义格式。请记住这些将在列表框中,因此它们将绑定到集合。可能,您需要的是绑定到元素,请查看以下帖子: 为元素指定数据模板x:Name属性,然后使用数据模板中的元素绑定 希望这有帮助,
Robert您需要修改转换器中切换开关的来源 添加额外的文本/字符串属性,以便将Property2和Property3绑定到其中。(这些也需要是单独的项目,以不同的方式进行模板化,就像在alarms应用程序中一样。)
然后看看如何更改
ContentProperty
的绑定,或者扩展OffOnConverter以包含其他新属性。能否显示一个模拟图像以显示您试图实现的目标?我添加了一种模拟,以向您展示我希望用户看到的内容。谢谢“开”/“关”标签如何与您的模型相匹配?对不起,我忘记了,我希望它直接落在Property2之后的第二行。我将编辑模型以反映这一点。我所寻找的与手机上本机报警应用程序中的toggleswitch没有太大区别。我只想将第二个和第三个文本块与标题正确绑定到同一个对象。@andersra这项工作正常吗?我也在寻找类似的解决方案。如果你可以分享你的代码,你是如何能够数据绑定第二和第三文本块,那将是伟大的!这不是我要找的,你指的转换器在哪里?我的头绑定正确,所以我不确定为什么内容部分中的其他文本块不以相同的方式绑定。@andersra它位于toggleswitchBy源代码的源代码中,您是指codeplex中toolkit中的源代码吗?
Property1
Property2:On/Off [===] (this is the toggle switch)
Property3