0
В Silverlight5, как ссылаться на ресурс управления пользователями - смайлик от события button_click?Ссылка Silverlight XAML от кода
Я могу получить доступ к объекту в порядке, если я его создаю в коде, а затем сделаю привязку данных таким образом, однако используя подход XAML, я получаю несколько более удобные инструменты. Пример: from Ch16
private void Button_Click_1(object sender, RoutedEventArgs e)
{
// **HERE how do I reference the XAML emoticon object
//emoticon.Name = "Smiley face2";
//emoticon.Icon = new BitmapImage(new Uri("icons/happy.png", UriKind.RelativeOrAbsolute));
}
.
<UserControl x:Class="EmoticonExample.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:EmoticonExample"
mc:Ignorable="d"
d:DesignHeight="300"
d:DesignWidth="400">
<UserControl.Resources>
<local:Emoticon x:Key="emoticon"
Name="SmileyFace"
Icon="icons/happy.png" />
</UserControl.Resources>
<Grid x:Name="LayoutRoot"
Margin="10"
Background="White"
DataContext="{StaticResource emoticon}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<TextBlock Text="Name:" />
<TextBlock Text="Image:" Grid.Column="1" />
<TextBox Name="myTextBox" Text="{Binding Name, Mode=TwoWay}" Grid.Row="1" />
<Image Name="myImage" Source="{Binding Icon}" Stretch="None" Grid.Row="1" Grid.Column="1" />
<Button Content="Button" HorizontalAlignment="Left" Margin="10,116,0,-92" Grid.Row="1" VerticalAlignment="Top" Width="75" Click="Button_Click_1"/>
</Grid>
</UserControl>