1) Copy and paste the following code into MainWindow.xaml file.
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<Window.Resources>
<Style x:Key="ContextMenuStyle" TargetType="{x:Type ContextMenu}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Border Background="MediumPurple" BorderThickness="1" BorderBrush="MediumPurple" CornerRadius="5">
<StackPanel>
<Button Margin="3,3,3,3" Height="26" Command="ApplicationCommands.Cut">
<DockPanel HorizontalAlignment="Left" Width="150">
<Image x:Name="Image1" Height="20" Width="30"/>
<TextBlock Margin="5,2,5,0" FontSize="16" FontWeight="Bold" FontFamily="Wingdings 2" Text="&"/>
<TextBlock VerticalAlignment="Center" FontWeight="Bold" Text="Cut"/>
<TextBlock VerticalAlignment="Center" TextAlignment="Right" Margin="0,0,5,0" Text="Ctrl+X"/>
</DockPanel>
</Button>
</StackPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<TextBox Height="50" Width="300">
<TextBox.ContextMenu>
<ContextMenu Style="{StaticResource ContextMenuStyle}"/>
</TextBox.ContextMenu>
</TextBox>
</Grid>
</Window>
2) Copy and paste the following code into MainWindow.xaml.cs file.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication1
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
Image1.Source = BitmapFrame.Create(new System.IO.MemoryStream(System.Convert.FromBase64String("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")), BitmapCreateOptions.None, BitmapCacheOption.OnLoad);
}
}
}
- This is the error message:
The name 'Image1' does not exist in the current context
- This is the error picture:
So, how to access Image1 element from xaml control template?