|
@@ -123,6 +123,7 @@ namespace InABox.DynamicGrid
|
|
|
Grid.ColumnDefinitions.Add(new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) });
|
|
|
Grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
|
|
|
Grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
|
|
|
+ Grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
|
|
|
|
|
|
Grid.RowDefinitions.Add(new RowDefinition { Height = new GridLength(1, GridUnitType.Star) });
|
|
|
Grid.RowDefinitions.Add(new RowDefinition { Height = GridLength.Auto });
|
|
@@ -131,6 +132,15 @@ namespace InABox.DynamicGrid
|
|
|
Image.StretchDirection = StretchDirection.DownOnly;
|
|
|
Image.Source = EmbeddedImageUtilities.CreateEmptyImage();
|
|
|
|
|
|
+ var pasteButton = new Button
|
|
|
+ {
|
|
|
+ Content = "Paste",
|
|
|
+ Margin = new Thickness(0, 5, 5, 0),
|
|
|
+ Width = 60,
|
|
|
+ Height = 35
|
|
|
+ };
|
|
|
+ pasteButton.Click += PasteButton_Click;
|
|
|
+
|
|
|
var clearButton = new Button
|
|
|
{
|
|
|
Content = "Clear",
|
|
@@ -149,16 +159,28 @@ namespace InABox.DynamicGrid
|
|
|
};
|
|
|
selectButton.Click += EmbeddedImageSelect_Click;
|
|
|
|
|
|
- Image.SetGridPosition(0, 0, 1, 3);
|
|
|
- clearButton.SetGridPosition(1, 1, 1, 1);
|
|
|
- selectButton.SetGridPosition(1, 2, 1, 1);
|
|
|
+ Image.SetGridPosition(0, 0, 1, 4);
|
|
|
+ pasteButton.SetGridPosition(1, 1, 1, 1);
|
|
|
+ clearButton.SetGridPosition(1, 2, 1, 1);
|
|
|
+ selectButton.SetGridPosition(1, 3, 1, 1);
|
|
|
Grid.Children.Add(Image);
|
|
|
+ Grid.Children.Add(pasteButton);
|
|
|
Grid.Children.Add(clearButton);
|
|
|
Grid.Children.Add(selectButton);
|
|
|
|
|
|
return Grid;
|
|
|
}
|
|
|
|
|
|
+ private void PasteButton_Click(object sender, RoutedEventArgs e)
|
|
|
+ {
|
|
|
+ if (Clipboard.ContainsImage())
|
|
|
+ {
|
|
|
+ var img = Clipboard.GetImage();
|
|
|
+ Image.Source = img;
|
|
|
+ ChangeField();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public override byte[] GetValue()
|
|
|
{
|
|
|
return EmbeddedImageUtilities.SaveImageToBytes(Image, _isEmpty, new JpegBitmapEncoder()) ?? Array.Empty<byte>();
|
|
@@ -202,7 +224,7 @@ namespace InABox.DynamicGrid
|
|
|
protected override void OnPropertyChanged(DependencyPropertyChangedEventArgs e)
|
|
|
{
|
|
|
base.OnPropertyChanged(e);
|
|
|
- if(e.Property == IsEnabledProperty)
|
|
|
+ if (e.Property == IsEnabledProperty)
|
|
|
{
|
|
|
Grid.RowDefinitions[1].Height = (bool)e.NewValue
|
|
|
? GridLength.Auto
|