回答編集履歴

2

CanvasよりGridのがいいな

2023/01/27 23:45

投稿

TN8001
TN8001

スコア9363

test CHANGED
@@ -15,40 +15,22 @@
15
15
  SizeToContent="Height"
16
16
  Slider.ValueChanged="ValueChanged">
17
17
  <StackPanel>
18
- <UniformGrid
19
- Height="200"
20
- Background="LightGray"
18
+ <UniformGrid Height="200" Background="LightGray" Rows="1">
21
- Rows="1">
22
- <HeaderedContentControl
23
- HorizontalAlignment="Center"
19
+ <HeaderedContentControl HorizontalAlignment="Center" VerticalAlignment="Center" Header="original">
24
- VerticalAlignment="Center"
25
- Header="original">
26
- <Image
27
- x:Name="image1"
28
- Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg"
20
+ <Image x:Name="image1" Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg" Stretch="None" />
29
- Stretch="None" />
30
21
  </HeaderedContentControl>
31
22
 
32
- <HeaderedContentControl
33
- HorizontalAlignment="Center"
34
- VerticalAlignment="Center"
35
- Header="BitmapSource Rotate">
23
+ <HeaderedContentControl HorizontalAlignment="Center" VerticalAlignment="Center" Header="BitmapSource Rotate">
36
24
  <Image x:Name="image2" Stretch="None" />
37
25
  </HeaderedContentControl>
38
26
 
27
+ <HeaderedContentControl HorizontalAlignment="Center" VerticalAlignment="Center" Header="Image Rotate">
39
- <HeaderedContentControl
28
+ <Grid
40
- HorizontalAlignment="Center"
29
+ HorizontalAlignment="Center"
41
- VerticalAlignment="Center"
30
+ VerticalAlignment="Center"
42
- Header="Image Rotate">
43
- <Canvas
44
- Width="{Binding ActualWidth, ElementName=image3}"
45
- Height="{Binding ActualHeight, ElementName=image3}"
46
31
  Background="White"
47
32
  ClipToBounds="True">
48
- <Image
49
- x:Name="image3"
50
- Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg"
33
+ <Image Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg" Stretch="None">
51
- Stretch="None">
52
34
  <Image.RenderTransform>
53
35
  <TransformGroup>
54
36
  <RotateTransform Angle="{Binding Value, ElementName=angle}" />
@@ -56,7 +38,7 @@
56
38
  </TransformGroup>
57
39
  </Image.RenderTransform>
58
40
  </Image>
59
- </Canvas>
41
+ </Grid>
60
42
  </HeaderedContentControl>
61
43
  </UniformGrid>
62
44
 
@@ -64,16 +46,10 @@
64
46
  <Slider x:Name="angle" Maximum="360" />
65
47
  </HeaderedContentControl>
66
48
  <HeaderedContentControl Margin="10" Header="x">
67
- <Slider
68
- x:Name="x"
69
- Maximum="100"
70
- Minimum="-100" />
49
+ <Slider x:Name="x" Maximum="100" Minimum="-100" />
71
50
  </HeaderedContentControl>
72
51
  <HeaderedContentControl Margin="10" Header="y">
73
- <Slider
74
- x:Name="y"
75
- Maximum="100"
76
- Minimum="-100" />
52
+ <Slider x:Name="y" Maximum="100" Minimum="-100" />
77
53
  </HeaderedContentControl>
78
54
  </StackPanel>
79
55
  </Window>

1

例追加

2023/01/27 23:16

投稿

TN8001
TN8001

スコア9363

test CHANGED
@@ -11,23 +11,69 @@
11
11
  x:Class="Qesstnak6tkab7r.MainWindow"
12
12
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
13
13
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
14
- Width="400"
14
+ Width="600"
15
15
  SizeToContent="Height"
16
16
  Slider.ValueChanged="ValueChanged">
17
17
  <StackPanel>
18
+ <UniformGrid
19
+ Height="200"
18
- <UniformGrid Height="200" Background="LightGray" Rows="1">
20
+ Background="LightGray"
21
+ Rows="1">
22
+ <HeaderedContentControl
23
+ HorizontalAlignment="Center"
24
+ VerticalAlignment="Center"
25
+ Header="original">
26
+ <Image
27
+ x:Name="image1"
19
- <Image x:Name="image1" Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg" Stretch="None" />
28
+ Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg"
29
+ Stretch="None" />
30
+ </HeaderedContentControl>
31
+
32
+ <HeaderedContentControl
33
+ HorizontalAlignment="Center"
34
+ VerticalAlignment="Center"
35
+ Header="BitmapSource Rotate">
20
- <Image x:Name="image2" Stretch="None" />
36
+ <Image x:Name="image2" Stretch="None" />
37
+ </HeaderedContentControl>
38
+
39
+ <HeaderedContentControl
40
+ HorizontalAlignment="Center"
41
+ VerticalAlignment="Center"
42
+ Header="Image Rotate">
43
+ <Canvas
44
+ Width="{Binding ActualWidth, ElementName=image3}"
45
+ Height="{Binding ActualHeight, ElementName=image3}"
46
+ Background="White"
47
+ ClipToBounds="True">
48
+ <Image
49
+ x:Name="image3"
50
+ Source="https://teratail-v2.storage.googleapis.com/uploads/avatars/u14/141642/L2BhZF1d_thumbnail.jpg"
51
+ Stretch="None">
52
+ <Image.RenderTransform>
53
+ <TransformGroup>
54
+ <RotateTransform Angle="{Binding Value, ElementName=angle}" />
55
+ <TranslateTransform X="{Binding Value, ElementName=x}" Y="{Binding Value, ElementName=y}" />
56
+ </TransformGroup>
57
+ </Image.RenderTransform>
58
+ </Image>
59
+ </Canvas>
60
+ </HeaderedContentControl>
21
61
  </UniformGrid>
22
62
 
23
- <HeaderedContentControl Header="angle">
63
+ <HeaderedContentControl Margin="10" Header="angle">
24
64
  <Slider x:Name="angle" Maximum="360" />
25
65
  </HeaderedContentControl>
26
- <HeaderedContentControl Header="x">
66
+ <HeaderedContentControl Margin="10" Header="x">
67
+ <Slider
68
+ x:Name="x"
69
+ Maximum="100"
27
- <Slider x:Name="x" Maximum="100" Minimum="-100" />
70
+ Minimum="-100" />
28
71
  </HeaderedContentControl>
29
- <HeaderedContentControl Header="y">
72
+ <HeaderedContentControl Margin="10" Header="y">
73
+ <Slider
74
+ x:Name="y"
75
+ Maximum="100"
30
- <Slider x:Name="y" Maximum="100" Minimum="-100" />
76
+ Minimum="-100" />
31
77
  </HeaderedContentControl>
32
78
  </StackPanel>
33
79
  </Window>
@@ -71,4 +117,4 @@
71
117
  }
72
118
  }
73
119
  ```
74
- ![アプリ画像](https://ddjkaamml8q8x.cloudfront.net/questions/2023-01-27/7b8774f5-fd68-4896-b2ec-587cd1af72dc.png)
120
+ ![アプリ画像](https://ddjkaamml8q8x.cloudfront.net/questions/2023-01-28/81ceb806-607f-404c-ad67-62226550235a.png)