質問編集履歴

1

試したことを追加しました

2018/12/04 08:45

投稿

roamschemer
roamschemer

スコア31

test CHANGED
File without changes
test CHANGED
@@ -9,3 +9,141 @@
9
9
 
10
10
 
11
11
  無理なんゃないかとも思い始めていますが、もしご存知の方がいらっしゃいましたらご教授ください。
12
+
13
+
14
+
15
+ 以下が試したことです。
16
+
17
+
18
+
19
+ ・PrismのテンプレートからXamarin.Formsを作成する
20
+
21
+ ・Nugetパッケージから更新プログラムを全て最新にする
22
+
23
+ ・ソリューション→右クリック→追加→新しいプロジェクト
24
+
25
+ ・Visual C#→Windows デスクトップ→WPFアプリ(.NET Framework)
26
+
27
+ ・参照を一つ下の階層に変更。名称は.WPFを付ける。フレームワークは4.7を選択してOK
28
+
29
+ ・WPFプロジェクト→参照を右クリック→参照の追加
30
+
31
+ ・プロジェクト→ソリューション→PCLにチェック→OK
32
+
33
+ ・NugetパッケージからXamarin.Forms.Platform.WPFをWPFプロジェクトに適用
34
+
35
+ ・NugetパッケージからPrism.Dryloc.Formsを全プロジェクトに適用
36
+
37
+ MainWindow.xaml.cs
38
+
39
+ ```C#
40
+
41
+ namespace XFWPF.WPF
42
+
43
+ {
44
+
45
+ /// <summary>
46
+
47
+ /// MainWindow.xaml の相互作用ロジック
48
+
49
+ /// </summary>
50
+
51
+ public partial class MainWindow : Xamarin.Forms.Platform.WPF.FormsApplicationPage
52
+
53
+ {
54
+
55
+ public MainWindow()
56
+
57
+ {
58
+
59
+ InitializeComponent();
60
+
61
+ Xamarin.Forms.Forms.Init();
62
+
63
+ LoadApplication(new XFWPF.App(new WpfInitializer()));
64
+
65
+ }
66
+
67
+
68
+
69
+ public class WpfInitializer : IPlatformInitializer
70
+
71
+ {
72
+
73
+ public void RegisterTypes(IContainerRegistry containerRegistry)
74
+
75
+ {
76
+
77
+ // Register any platform specific implementations
78
+
79
+ }
80
+
81
+ }
82
+
83
+
84
+
85
+ }
86
+
87
+ }
88
+
89
+ ```
90
+
91
+
92
+
93
+ MainWindow.xaml
94
+
95
+ ```Xaml
96
+
97
+ <xf:FormsApplicationPage
98
+
99
+ x:Class="XFWPF.WPF.MainWindow"
100
+
101
+ xmlns:xf="clr-namespace:Xamarin.Forms.Platform.WPF;assembly=Xamarin.Forms.Platform.WPF"
102
+
103
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
104
+
105
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
106
+
107
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
108
+
109
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
110
+
111
+ xmlns:local="clr-namespace:XFWPF.WPF"
112
+
113
+ mc:Ignorable="d"
114
+
115
+ Title="MainWindow" Height="450" Width="800">
116
+
117
+ <Grid>
118
+
119
+
120
+
121
+ </Grid>
122
+
123
+ </xf:FormsApplicationPage>
124
+
125
+ ```
126
+
127
+
128
+
129
+ では以下のエラーが出てダメでした。
130
+
131
+
132
+
133
+ System.Windows.Markup.XamlParseException
134
+
135
+ HResult=0x80131501
136
+
137
+ Message='指定されたバインディング制約に一致する型 'XFWPF.WPF.MainWindow' のコンストラクターの呼び出しで例外がスローされました。' 行番号 '8'、行位置 '5'。
138
+
139
+ Source=PresentationFramework
140
+
141
+ スタック トレース:
142
+
143
+ 場所 System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
144
+
145
+
146
+
147
+ 内部例外 1:
148
+
149
+ TypeLoadException: アセンブリ 'Prism, Version=7.1.0.431, Culture=neutral, PublicKeyToken=40ee6c3a2184dc59' から型 'Prism.Navigation.INavigationService' を読み込めませんでした。