Как можно применить шаблон привязки к кнопке изображения в Silverlight - PullRequest
3 голосов
/ 30 марта 2012

Я новичок в использовании Sliverlight.Надеюсь, кто-нибудь может мне помочь.Мне нужны кнопки с изображением, чтобы показать, что заказ завершен или находится в состоянии обработки.Функции события клика этих двух одинаковы для навигации по одной и той же странице.В настоящее время я создал две кнопки Image клиента в App.xaml, потому что источник этого изображения не может делать «TemplateBinding»;кнопка не имеет этого свойства.Это лучший способ сделать это?Если да, не могли бы вы предоставить код или ссылку, чтобы я мог извлечь из этого урок?Спасибо.

Вот мой код:

<Style x:Key="btnComplete" TargetType="Button"  >
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                    <StackPanel>
                        <Image  Height="50" Width="120" Stretch="none"   Source="../images/btnComplete.png"/>                            
                    </StackPanel>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

Ответы [ 2 ]

2 голосов
/ 30 марта 2012

Самый простой способ добиться этого - создать прозрачную контрольную шаблон для кнопки и добавить изображение в виде содержимого к кнопке в любом месте.

Код кнопки на вашей странице будет таким, как показано ниже.

   <Button  Height="100" Width="100" Style="{StaticResource TransparentButtonStyle}" Click="TwitterBtn_Click">
         <Image Height="100" Source="YourIcon.png" Width="100"/>
   </Button>

И TransparentButtonStyle может быть объявлен в App.xaml. Вот и все!

<Style x:Key="TransparentButtonStyle" TargetType="Button">
    <Setter Property="Background" Value="Transparent" />
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="Button">
               <ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}"
                        Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch" />
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>
1 голос
/ 30 марта 2012

Вот реализация ImageButton для wp7. Я использовал этот пример и модифицировал его для разных вещей: http://silvergeek.net/2011/01/14/imagebutton-control-for-win-phone-7/

Также вы можете проверить элементы управления и источник Codeing4Fun, в частности кнопки. http://coding4fun.codeplex.com/

обновление: Telerik теперь также имеет элемент управления ImageButton для wp7.

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