回答編集履歴

3

Xamarin.Forms.Platform.WPFの組み込みWindowChromeクラスを使用するサンプルを追加。

2019/03/05 15:32

投稿

P3PPP
P3PPP

スコア359

test CHANGED
@@ -1,3 +1,37 @@
1
+ Xamarin.Forms.Platform.WPFの組み込みWindowChromeクラスを使った方が良さそうだったので修正。
2
+
3
+
4
+
5
+ (MainPageに名前空間 `xmlns:shell="clr-namespace:Microsoft.Windows.Shell;assembly=Xamarin.Forms.Platform.WPF"` を追加)
6
+
7
+
8
+
9
+ ```xml
10
+
11
+ <shell:WindowChrome.WindowChrome>
12
+
13
+ <!-- IgnoreTaskbarOnMaximize=true を加えると GlassFrameThickness=0 でもタスクバー部分までウィンドウが広がる。 -->
14
+
15
+ <shell:WindowChrome CaptionHeight="0" UseAeroCaptionButtons="True"
16
+
17
+ GlassFrameThickness="0" IgnoreTaskbarOnMaximize="True"
18
+
19
+ CornerRadius="0" ResizeBorderThickness="0"/>
20
+
21
+ </shell:WindowChrome.WindowChrome>
22
+
23
+ ```
24
+
25
+
26
+
27
+ ---------------
28
+
29
+
30
+
31
+ (旧回答)
32
+
33
+
34
+
1
35
  理由は不明ですが`WindowChrome.GlassFrameThickness = 0`が設定されている場合、フルスクリーン化した時にタスクバーが手前に描画されるようです。
2
36
 
3
37
 
@@ -36,7 +70,7 @@
36
70
 
37
71
 
38
72
 
39
- (旧回答)
73
+ (旧回答)
40
74
 
41
75
 
42
76
 

2

誤字修正

2019/03/05 15:32

投稿

P3PPP
P3PPP

スコア359

test CHANGED
@@ -28,7 +28,7 @@
28
28
 
29
29
 
30
30
 
31
- FormsApplicationPage(の規定クラス)に当たっているスタイル[https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111](https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111)
31
+ FormsApplicationPage(の基底クラス)に当たっているスタイル[https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111](https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111)
32
32
 
33
33
 
34
34
 

1

回避策を追記。

2019/03/05 08:17

投稿

P3PPP
P3PPP

スコア359

test CHANGED
@@ -1,3 +1,45 @@
1
+ 理由は不明ですが`WindowChrome.GlassFrameThickness = 0`が設定されている場合、フルスクリーン化した時にタスクバーが手前に描画されるようです。
2
+
3
+
4
+
5
+ FormsApplicationPageを継承したMainPageでWindowChromeを上書きすると回避できました。
6
+
7
+
8
+
9
+ 例:
10
+
11
+
12
+
13
+ ```xml
14
+
15
+ <WindowChrome.WindowChrome>
16
+
17
+ <!-- なぜかGlassFrameThickness=0にすると、最前面で最大化した時にタスクバーが手前に描画される。 -->
18
+
19
+ <WindowChrome CaptionHeight="0" UseAeroCaptionButtons="True" GlassFrameThickness="0.1" CornerRadius="0" ResizeBorderThickness="0"/>
20
+
21
+ </WindowChrome.WindowChrome>
22
+
23
+ ```
24
+
25
+
26
+
27
+ 参考:
28
+
29
+
30
+
31
+ FormsApplicationPage(の規定クラス)に当たっているスタイル[https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111](https://github.com/xamarin/Xamarin.Forms/blob/bd31e1e9fc8b2f9ad94cc99e0c7ab058174821f3/Xamarin.Forms.Platform.WPF/Themes/FormsWindow.xaml#L111)
32
+
33
+
34
+
35
+ -------
36
+
37
+
38
+
39
+ (旧回答)
40
+
41
+
42
+
1
43
  Window 10でタスクバーが隠れなくなるのはXamarin.Formsに関係なく普遍的な問題のようです。(フルスクリーンのゲームなどでも発生する)
2
44
 
3
45
  一応、タスクバーの表示設定とExplorerの再起動で隠れるようになるみたいですが、しばらく使っていると再発する問題のようです。