Я работаю над приложением, ориентированным на местоположение, где я хочу иметь пользовательские кнопки, имеющие изображение, а при нажатии на изображение добавляется метка. Я попробовал несколько решений ...Как создать пользовательскую кнопку с изображением, меткой и событием click?
Я начал с этим кодом, из этой статьи: http://igrali.wordpress.com/2011/12/06/making-a-custom-windows-phone-bing-pushpin-from-an-image/
<ControlTemplate
x:Key="PushpinMe"
TargetType="maps:Pushpin">
<Grid
Name="PushpinMeGrid"
Height="50"
Width="50"
HorizontalAlignment="Center"
VerticalAlignment="Center">
<Image
x:Name="PushpinMeImage"
Height="50"
Width="50"
Source="Pushpins/pushpinSeaplane.png" />
<TextBlock Text="{Binding Source=}"
</Grid>
</ControlTemplate>
Затем я попытался обертыванием изображения кнопки, но это только сделал канцелярский по существу невидимо , Затем я попытался использовать шаблон управления от одного из моих предыдущих приложений и модифицировал его, и пришел с этим:
<Button
Name="PushpinButton"
Click="Button_Click">
<Button.Style>
<Style
TargetType="Button">
<Setter
Property="Template">
<Setter.Value>
<ControlTemplate
TargetType="Button">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition
Width="*" />
<ColumnDefinition
Width="*" />
</Grid.ColumnDefinitions>
<Image
Grid.Column="0"
Grid.Row="0"
Grid.RowSpan="2"
Height="50"
Width="50"
Source="Pushpins/pushpinSeaplane.png" />
<Grid
Grid.Column="1">
<Grid.RowDefinitions>
<RowDefinition
Height="39" />
<RowDefinition
Height="*" />
</Grid.RowDefinitions>
<Grid
Grid.Row="0"
Background="Black">
<TextBlock
Grid.Row="0"
Foreground="White"
Text="{Binding ElementName=me,
Path=Content}"
TextWrapping="Wrap"
Margin="5" />
</Grid>
</Grid>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Button.Style>
</Button>
</ControlTemplate>
Еще не победитель - я не могу связать содержимое кнопки , и, следовательно, текстовый блок.
Будут серии кнопок, с разными изображениями и разными ярлыками, поэтому в идеале я бы хотел создать шаблон, который я могу использовать, и связать изображение и метку с кодом. Код для события нажатия кнопки будет таким же простым, как сделать текстовый блок видимым или скомпенсированным.
Я знаю, что мой второй пример довольно уродлив, но я старался сделать визуальный внешний вид правильным - я буду изменять его по мере необходимости для визуальных эффектов, но на данный момент мне нужно выяснить, как я могу связать изображение и текст из кода. Событие нажатия кнопки работает только с сообщением (показывая, что оно зарегистрировало событие click).
Благодарим за помощь.
Простите мою неопытность ... Является ли это реализованным как пользовательский элемент управления? И в любом случае, можете ли вы привести мне пример того, как это реализовано из кода? Или я сделаю это с помощью xaml? Мне нужно иметь возможность контролировать, какая группа (или) групп нажатий отображается, поскольку они собираются группироваться. Тем временем я попытаюсь понять это. Благодаря! –
@ Рич Хопкинс, в режиме ожидания, я посмотрю, смогу ли я что-то собрать для вас во время обеденного перерыва. – KodeKreachor
Спасибо тонну! Я все еще смотрю. –