
ElementHostタスクにWPFが表示されない
環境: Windows7, .NetFrameWork3.5SP1 VisualStudio2008
WPF入門書で勉強中ですが、その最後の項目「WindowsフォームAPでWPFコントロールを使う」が説明通りにできません。
次のように行いました
1. WindowsフォームAPプロジェクトを作成
2. WPFユーザコントロールをソリューションに追加
3 PresentationCore.dllなどを「参照の追加」で追加
4.ElementHostコントロールをフォームに配置
5. ソリューションをビルド
※これで、ElementHostタスクにWPFユーザコントロールが表示されることになっていますが表示されません。
入門書付属のサンプルではWPFユーザコントロールが表示されています。
しかし、そのフォームにもう1つElementHostコントロールを追加してみると、そちらは表示されません。
また、以下のように、ElementHostコントロールのChildにWPFユーザコントロールを設定するコードを入れてみましたが駄目でした。
Imports System.Windows.Forms.Integration
Imports IDPass ' WPF user control
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
Dim host As New ElementHost()
host.Dock = DockStyle.Fill
' Create the WPF UserControl.
Dim uc As New IDPass.UserControl1()
' Assign the WPF UserControl to the ElementHost control's
' Child property.
host.Child = uc
' Add the ElementHost control to the form's
' collection of child controls.
Me.Controls.Add(host)
End Sub
End Class
どなたか分かる方がいましたらご教授ください。
No.1ベストアンサー
- 回答日時:
ちょっと確認させてください。
ビルドされた後、アセンブリが生成されて、ツールボックスに作成されたWPFユーザーコントロールが表示されていると思います。
そのツールボックスのユーザーコントロールをフォームに配置して、そのコントロールのElementHostタスクに表示されないということですか?
それとも、WPFユーザーコントロールを作成・ビルドして、それを、先にフォームに配置されたWPFコントロール(WPF相互運用機能:ElementHostコントロール)のChildプロパティにそのコントロール名を設定できないということですか?
どちらにせよ、こちらの環境では問題なく表示されましたので、順番を変えてみたらいかがでしょうか。
1.~3.までを行なって、先にソリューションをビルドする。
それからフォームをデザイナで表示して、作成されたWPFユーザーコントロールがツールボックスに表示されていますので、それをフォームに配置する。とかとか
有難うございます。お陰さまで解決いたしました。
教えていただいたことは全て試してみましたが、ツールボックスにWPFユーザーコントロールが表示されませんでした。
それで、その原因を探してみると、オプションの[AutoToolboxPopulate]がFalseでしたので、これをTrueに変更してみましたら、WPFユーザーコントロールが表示されるようになりました。
入門書には、ツールボックスに表示されることは一言も触れられておりませんし、VisualStudioもエラーメッセ―ジを表示しないため、糸口も掴めず諦めかけておりました。
これで漸く、プログラム開発がスタートできます。本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) 九九の答えの計算 3 2022/12/20 22:13
- Visual Basic(VBA) 空白のセルを変更しようとした時(アクティブセル)に インプットボックスを5回出す インプットボックス 1 2023/03/14 11:01
- 英語 The P2s and P4s of bilateral mandible were extract 1 2022/12/11 18:09
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- 英語 What do you think a sick child needs most during t 3 2023/04/03 09:23
- Visual Basic(VBA) userformでSheetを選択して開くコード 1 2023/05/15 16:27
- Visual Basic(VBA) 改行ごとに行を追加し、数量を分割 4 2023/07/11 16:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelVBAでListViewが使用できない
-
VBA ユーザーフォームの Keypre...
-
間違えて配置してしまったコン...
-
'ckbl' コントロールは作成され...
-
エクセルVBAでオプションボタン...
-
全てのオブジェクトのプロパテ...
-
チェックボックスをオンにした...
-
エクセル コントロールツール...
-
カメラスクロールするのを動画...
-
vb.netで画面のコントロールId...
-
LCD 1602ディスプレイの輝度調...
-
C# Form上に配置されたコントロ...
-
無料で使えるグリッドコントロール
-
エクセル・VBA CheckBoxのオブ...
-
Groupboxの配下のコントロール...
-
AccessのDataGridコントロール...
-
C#で角が丸いテキストボックス
-
教えてください
-
listviewの設定について
-
ワークシート上のコントロール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELでactivexコントロールを...
-
エクセル・VBA CheckBoxのオブ...
-
カメラスクロールするのを動画...
-
エクセルVBAでオプションボタン...
-
チェックボックスをオンにした...
-
VBA ユーザーフォームの Keypre...
-
chr関数の呼び出しで「プロ...
-
'ckbl' コントロールは作成され...
-
ExcelVBAでListViewが使用できない
-
全てのオブジェクトのプロパテ...
-
vb.netで画面のコントロールId...
-
間違えて配置してしまったコン...
-
変数をコントロール型で使用す...
-
エクセル コントロールツール...
-
ユーザーフォームで動的(Me.Con...
-
OCXって何ですか?
-
C#で角が丸いテキストボックス
-
Groupboxの配下のコントロール...
-
Labelコントロールの(左右)余...
-
excel vbaでユーザーフォームに...
おすすめ情報