Submit Search
Upload
XAML Islands その2
•
Download as PPTX, PDF
•
2 likes
•
905 views
M
m ishizaki
Follow
XAML Islands の紹介と全容の理解
Read less
Read more
Software
Report
Share
Report
Share
1 of 33
Download now
Recommended
私が ASP.NET を選ぶ理由
私が ASP.NET を選ぶ理由
m ishizaki
F# で ASP.NET
F# で ASP.NET
m ishizaki
Xamarin.Forms オリジナルタイマーアプリを作ろうハンズオン
Xamarin.Forms オリジナルタイマーアプリを作ろうハンズオン
m ishizaki
DataTable
DataTable
m ishizaki
Ruby と C# をつなぐ
Ruby と C# をつなぐ
107steps
Xamarin.Android ハンズオン 2018/11
Xamarin.Android ハンズオン 2018/11
m ishizaki
デスクトップアプリ最新事情 2018/10
デスクトップアプリ最新事情 2018/10
m ishizaki
Xamarin ハンズオン Android の部
Xamarin ハンズオン Android の部
m ishizaki
Recommended
私が ASP.NET を選ぶ理由
私が ASP.NET を選ぶ理由
m ishizaki
F# で ASP.NET
F# で ASP.NET
m ishizaki
Xamarin.Forms オリジナルタイマーアプリを作ろうハンズオン
Xamarin.Forms オリジナルタイマーアプリを作ろうハンズオン
m ishizaki
DataTable
DataTable
m ishizaki
Ruby と C# をつなぐ
Ruby と C# をつなぐ
107steps
Xamarin.Android ハンズオン 2018/11
Xamarin.Android ハンズオン 2018/11
m ishizaki
デスクトップアプリ最新事情 2018/10
デスクトップアプリ最新事情 2018/10
m ishizaki
Xamarin ハンズオン Android の部
Xamarin ハンズオン Android の部
m ishizaki
XAML Islands
XAML Islands
m ishizaki
XAML Standard
XAML Standard
m ishizaki
ARCore
ARCore
m ishizaki
Cross-Platform ができる Xamarin について
Cross-Platform ができる Xamarin について
m ishizaki
Xamarin で クラシックデスクトップ 2
Xamarin で クラシックデスクトップ 2
m ishizaki
Uno Platform 入門
Uno Platform 入門
m ishizaki
Bait and switch
Bait and switch
m ishizaki
WPF .NET Core でも XAML デザイナをあきらめない
WPF .NET Core でも XAML デザイナをあきらめない
m ishizaki
UWPでもDataTable
UWPでもDataTable
m ishizaki
Xamarin概要と活用方法
Xamarin概要と活用方法
Yoshito Tabuchi
Realm
Realm
m ishizaki
Xamarin概要と活用方法
Xamarin概要と活用方法
Yoshito Tabuchi
デスクトップアプリ最新事情201912
デスクトップアプリ最新事情201912
m ishizaki
Xamarin で始めるクロスプラットフォーム開発
Xamarin で始めるクロスプラットフォーム開発
m ishizaki
Xamarin の Api カバー率 100% について
Xamarin の Api カバー率 100% について
m ishizaki
Xamarin.Forms.WPF を試してみた
Xamarin.Forms.WPF を試してみた
m ishizaki
.NET Standard で PostgreSql を使ってみた
.NET Standard で PostgreSql を使ってみた
m ishizaki
Uno Platform さわってみた
Uno Platform さわってみた
m ishizaki
Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発
m ishizaki
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
m ishizaki
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
m ishizaki
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
m ishizaki
More Related Content
Similar to XAML Islands その2
XAML Islands
XAML Islands
m ishizaki
XAML Standard
XAML Standard
m ishizaki
ARCore
ARCore
m ishizaki
Cross-Platform ができる Xamarin について
Cross-Platform ができる Xamarin について
m ishizaki
Xamarin で クラシックデスクトップ 2
Xamarin で クラシックデスクトップ 2
m ishizaki
Uno Platform 入門
Uno Platform 入門
m ishizaki
Bait and switch
Bait and switch
m ishizaki
WPF .NET Core でも XAML デザイナをあきらめない
WPF .NET Core でも XAML デザイナをあきらめない
m ishizaki
UWPでもDataTable
UWPでもDataTable
m ishizaki
Xamarin概要と活用方法
Xamarin概要と活用方法
Yoshito Tabuchi
Realm
Realm
m ishizaki
Xamarin概要と活用方法
Xamarin概要と活用方法
Yoshito Tabuchi
デスクトップアプリ最新事情201912
デスクトップアプリ最新事情201912
m ishizaki
Xamarin で始めるクロスプラットフォーム開発
Xamarin で始めるクロスプラットフォーム開発
m ishizaki
Xamarin の Api カバー率 100% について
Xamarin の Api カバー率 100% について
m ishizaki
Xamarin.Forms.WPF を試してみた
Xamarin.Forms.WPF を試してみた
m ishizaki
.NET Standard で PostgreSql を使ってみた
.NET Standard で PostgreSql を使ってみた
m ishizaki
Uno Platform さわってみた
Uno Platform さわってみた
m ishizaki
Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発
m ishizaki
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
m ishizaki
Similar to XAML Islands その2
(20)
XAML Islands
XAML Islands
XAML Standard
XAML Standard
ARCore
ARCore
Cross-Platform ができる Xamarin について
Cross-Platform ができる Xamarin について
Xamarin で クラシックデスクトップ 2
Xamarin で クラシックデスクトップ 2
Uno Platform 入門
Uno Platform 入門
Bait and switch
Bait and switch
WPF .NET Core でも XAML デザイナをあきらめない
WPF .NET Core でも XAML デザイナをあきらめない
UWPでもDataTable
UWPでもDataTable
Xamarin概要と活用方法
Xamarin概要と活用方法
Realm
Realm
Xamarin概要と活用方法
Xamarin概要と活用方法
デスクトップアプリ最新事情201912
デスクトップアプリ最新事情201912
Xamarin で始めるクロスプラットフォーム開発
Xamarin で始めるクロスプラットフォーム開発
Xamarin の Api カバー率 100% について
Xamarin の Api カバー率 100% について
Xamarin.Forms.WPF を試してみた
Xamarin.Forms.WPF を試してみた
.NET Standard で PostgreSql を使ってみた
.NET Standard で PostgreSql を使ってみた
Uno Platform さわってみた
Uno Platform さわってみた
Visual Studio Code で C# でのアプリ開発
Visual Studio Code で C# でのアプリ開発
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
.NET Core でデスクトップアプリ Visual Studio 2019 Preview 版
More from m ishizaki
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
m ishizaki
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
m ishizaki
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
m ishizaki
Xamarin で良くやっていたあれを MAUI でする話
Xamarin で良くやっていたあれを MAUI でする話
m ishizaki
「スタバ」する話
「スタバ」する話
m ishizaki
エンジニアと「スタバ」ツイートについて
エンジニアと「スタバ」ツイートについて
m ishizaki
Build 2022 / Uno Platform
Build 2022 / Uno Platform
m ishizaki
7 つの Blazor
7 つの Blazor
m ishizaki
C# Tokyo コミュニティ説明 202205 版
C# Tokyo コミュニティ説明 202205 版
m ishizaki
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
m ishizaki
2022 抱負
2022 抱負
m ishizaki
モバイルディスプレイ
モバイルディスプレイ
m ishizaki
Windows フォームアプリ 2022
Windows フォームアプリ 2022
m ishizaki
dotnet tool
dotnet tool
m ishizaki
C#10
C#10
m ishizaki
C# Tokyo コミュニティについて Short 版
C# Tokyo コミュニティについて Short 版
m ishizaki
C# Tokyo コミュニティ案内
C# Tokyo コミュニティ案内
m ishizaki
C# 9 のおすすめ新機能
C# 9 のおすすめ新機能
m ishizaki
C# Tokyo コミュニティ説明 2021/01/29 版
C# Tokyo コミュニティ説明 2021/01/29 版
m ishizaki
秋葉原 C# もくもく会
秋葉原 C# もくもく会
m ishizaki
More from m ishizaki
(20)
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
継承辺りのもしかしたらマイナーかもしれない C#
Visual Studio を使わず .NET する
Visual Studio を使わず .NET する
Xamarin で良くやっていたあれを MAUI でする話
Xamarin で良くやっていたあれを MAUI でする話
「スタバ」する話
「スタバ」する話
エンジニアと「スタバ」ツイートについて
エンジニアと「スタバ」ツイートについて
Build 2022 / Uno Platform
Build 2022 / Uno Platform
7 つの Blazor
7 つの Blazor
C# Tokyo コミュニティ説明 202205 版
C# Tokyo コミュニティ説明 202205 版
仮想環境に MAUI 環境を構築する話
仮想環境に MAUI 環境を構築する話
2022 抱負
2022 抱負
モバイルディスプレイ
モバイルディスプレイ
Windows フォームアプリ 2022
Windows フォームアプリ 2022
dotnet tool
dotnet tool
C#10
C#10
C# Tokyo コミュニティについて Short 版
C# Tokyo コミュニティについて Short 版
C# Tokyo コミュニティ案内
C# Tokyo コミュニティ案内
C# 9 のおすすめ新機能
C# 9 のおすすめ新機能
C# Tokyo コミュニティ説明 2021/01/29 版
C# Tokyo コミュニティ説明 2021/01/29 版
秋葉原 C# もくもく会
秋葉原 C# もくもく会
XAML Islands その2
1.
/ 32 XAML Islands その2 1 城東.NET
#29 2019年02月20日 石崎 充良
2.
/ 32 自己紹介 石崎 充良
( @mishi_cs ) Japan Xamarin Users Group ( JXUG ) Microsoft MVP for Developer Technologies 言語: C# XAML 活動: ・JXUG (もくもく会) (connpass) ・城東.NET Users Group (connpass) ・C# もくもく会 (connpass) ※主に秋葉原 2
3.
/ 32 XAML Standard とは関係ありません 3
4.
/ 32 XAML Standard
とは ・文法の基本は同じだが、複数のプラットフォーム毎の要素の実装差により同じ XAML が書けない。 ・プラットフォーム毎に要素のプロパティなど API を統一しようという夢の規格。 https://github.com/Microsoft/xaml-standard/commits/staging https://github.com/Microsoft/xaml-standard 4
5.
/ 32 実装 https://docs.microsoft.com/ja-jp/xamarin/xamarin-forms/xaml/standard/ 5
6.
/ 32 XAML Islands 6
7.
/ 32 Windows 最新機能が使える ・WPF
や Windows フォームアプリケーションで Windows 最新機能が使える夢の技術 ・Windows 最新機能 = UWP で実装される ・UWP のコントロールが WPF や Windows フォームで使える ・October 2018 Update で使えるようになった (まだ問題はある) 7
8.
/ 32 なぜ WPF
や Windows フォーム? ・WPF などのデスクトップ技術にはまだまだメリットがある ( 配布・インストーラ・ファイルアクセス… ) ・新機能は UWP (だけ)に追加される ・デスクトップアプリを UWP のインストールフォーマットで包んでストアで配信する ことも UWP という扱いにまでなった ・UWP の未来は… Hololens? 8
9.
/ 32 UWP コントロールが使える 9 ・WPF
には ProgressRing がない (自作したり、外部ライブラリなどはある) ・WPF ももう10年前の技術
10.
/ 32 始め方 10
11.
/ 32 手順 ・普通にプロジェクトを作る ・NuGet からパッケージをインストール ・プロジェクトに
UWP 関係の参照を追加 ・WindowsXamlHost コントロール(NuGet パッケージ内に有) を画面に配置 ・WindowsXamlHost コントロールのプロパティに生成するコントロール名を設定 ・WindowsXamlHost コントロール ChildChanged イベントで生成されたコントロール の設定を行う 11
12.
/ 32 普通にプロジェクトを作る ・普通にプロジェクトを作ります 12
13.
/ 32 NuGet からパッケージをインストール ・NuGet
からパッケージをインストール または 13
14.
/ 32 プロジェクトに UWP
関係の参照を追加 ・コントロールを表示するだけなら参照の追加は 2 件で OK ※プロパティの設定などを行うには他にも参照が必要 14
15.
/ 32 追加する参照の全容 ・それぞれ何に必要かは未検証です。 15https://docs.microsoft.com/ja-jp/windows/uwp/porting/desktop-to-uwp-enhance#first-set-up-your-project
16.
/ 32 WindowsXamlHost を画面に配置 xmlns
の追加 Xamlhost エレメントの配置 16 xmlns:xamlhost="clr-namespace:Microsoft.Toolkit.Wpf.UI.XamlHost;assembly=Microsoft.Toolkit.Wpf.UI.XamlHost"
17.
/ 32 生成するコントロール名を設定 生成するコントロール名を設定 17
18.
/ 32 ChildChanged でコントロールの設定 コントロールが生成されると
ChildChanged イベントが発生する (破棄のタイミングでも発生するので注意) 18
19.
/ 32 実行 ※現在 DPI
関係に未対応事項あり 19
20.
/ 32 コントロール 20
21.
/ 32 使えると書かれているコントロール ・WebView ・WebViewCompatible ・InkCanvas ・InkToolbar ・MediaPlayerElement 21https://docs.microsoft.com/ja-jp/windows/uwp/xaml-platform/xaml-host-controls
22.
/ 32 WindowsXamlHost 不要 22
23.
/ 32 NuGet パッケージ追加 23
24.
/ 32 実行 24
25.
/ 32 参照の追加不要 ・これらの参照を追加 しませんでした 25https://docs.microsoft.com/ja-jp/windows/uwp/porting/desktop-to-uwp-enhance#first-set-up-your-project
26.
/ 32 もう一つの コントロール 生成方法 26
27.
/ 32 コードで生成すると楽そう 27 UWP のコントロールは普通に ビハインドコードでインスタンス化できる UI
に置くには、XamlHost コントロールの 中に入れなければならない
28.
/ 32 おまじないについて ・UWP のコントロールを生む際に、「そのスレッド上で」一度呼んでおく必要がある。 ・UI
スレッドなら、イベントハンドラを超えて同じスレッドなので一度呼んで置けば 特に気にする必要はない。 ・XamlHost をインスタンス化すると、呼ばなくてよい(内部で呼ばれている?) ・XamlHost は Xaml でインスタンス化しておけば、InitializeCompomemt() で完了し ているのでより気にしなくてよい。 28
29.
/ 32 試してみましょう 29 おまじない無しだと例外 先に XamlHost
を インスタンス化すれば おまじない不要
30.
/ 32 コンテナも使える これでいいのでは? 30
31.
/ 32 ほぼ全てのコントロールが使える 31https://rksoftware.hatenablog.com/entry/2019/01/20/193954
32.
/ 32 まとめ ・HoloLens でないなら、もうこれでいいのでは? 32
33.
/ 32 ありがとうございました! 33
Download now