Enviar pesquisa
Carregar
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
•
Transferir como PPTX, PDF
•
0 gostou
•
1,975 visualizações
S
Study Group by SciencePark Corp.
Seguir
勉強会で発表した資料。 https://sciencepark.connpass.com/event/178816/
Leia menos
Leia mais
Software
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 11
Baixar agora
Recomendados
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)
Hiroshi Tokumaru
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するか
Shogo Wakayama
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
React-konvaで絵を描いてみる話
React-konvaで絵を描いてみる話
iPride Co., Ltd.
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
Ryo Suzuki
Epic Online Services でできること
Epic Online Services でできること
エピック・ゲームズ・ジャパン Epic Games Japan
Recomendados
30分で分かる!OSの作り方
30分で分かる!OSの作り方
uchan_nos
文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)
Hiroshi Tokumaru
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するか
Shogo Wakayama
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
React-konvaで絵を描いてみる話
React-konvaで絵を描いてみる話
iPride Co., Ltd.
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
Ryo Suzuki
Epic Online Services でできること
Epic Online Services でできること
エピック・ゲームズ・ジャパン Epic Games Japan
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
infinite_loop
C#で速度を極めるいろは
C#で速度を極めるいろは
Core Concept Technologies
目grep入門 +解説
目grep入門 +解説
murachue
PHP の GC の話
PHP の GC の話
y-uti
MagicOnion入門
MagicOnion入門
torisoup
メタプログラミングって何だろう
メタプログラミングって何だろう
Kota Mizushima
Power Automate Desktopの内部言語Robinについて
Power Automate Desktopの内部言語Robinについて
Kazuya Onuma
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴について
Yoshifumi Kawai
PEGで構文解析をする
PEGで構文解析をする
jiro4989
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
WebSocketのキホン
WebSocketのキホン
You_Kinjoh
C# 8.0 null許容参照型
C# 8.0 null許容参照型
信之 岩永
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
UnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたい
Itsuki Inoue
暗号技術の実装と数学
暗号技術の実装と数学
MITSUNARI Shigeo
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
Daichi Koike
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
ソースコードレビューのススメ
ソースコードレビューのススメ
KLab Inc. / Tech
Uwpアプリケーション開発入門
Uwpアプリケーション開発入門
Makoto Nishimura
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
Study Group by SciencePark Corp.
Mais conteúdo relacionado
Mais procurados
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
infinite_loop
C#で速度を極めるいろは
C#で速度を極めるいろは
Core Concept Technologies
目grep入門 +解説
目grep入門 +解説
murachue
PHP の GC の話
PHP の GC の話
y-uti
MagicOnion入門
MagicOnion入門
torisoup
メタプログラミングって何だろう
メタプログラミングって何だろう
Kota Mizushima
Power Automate Desktopの内部言語Robinについて
Power Automate Desktopの内部言語Robinについて
Kazuya Onuma
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
土岐 孝平
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴について
Yoshifumi Kawai
PEGで構文解析をする
PEGで構文解析をする
jiro4989
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
WebSocketのキホン
WebSocketのキホン
You_Kinjoh
C# 8.0 null許容参照型
C# 8.0 null許容参照型
信之 岩永
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
UnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたい
Itsuki Inoue
暗号技術の実装と数学
暗号技術の実装と数学
MITSUNARI Shigeo
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
Daichi Koike
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
ソースコードレビューのススメ
ソースコードレビューのススメ
KLab Inc. / Tech
Mais procurados
(20)
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
大規模ソーシャルゲームを支える技術~PHP+MySQLを使った高負荷対策~
C#で速度を極めるいろは
C#で速度を極めるいろは
目grep入門 +解説
目grep入門 +解説
PHP の GC の話
PHP の GC の話
MagicOnion入門
MagicOnion入門
メタプログラミングって何だろう
メタプログラミングって何だろう
Power Automate Desktopの内部言語Robinについて
Power Automate Desktopの内部言語Robinについて
怖くないSpring Bootのオートコンフィグレーション
怖くないSpring Bootのオートコンフィグレーション
明日使えないすごいビット演算
明日使えないすごいビット演算
HttpClient詳解、或いは非同期の落とし穴について
HttpClient詳解、或いは非同期の落とし穴について
PEGで構文解析をする
PEGで構文解析をする
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
WebSocketのキホン
WebSocketのキホン
C# 8.0 null許容参照型
C# 8.0 null許容参照型
テストコードの DRY と DAMP
テストコードの DRY と DAMP
UnrealEngine4で合成音声を使いたい
UnrealEngine4で合成音声を使いたい
暗号技術の実装と数学
暗号技術の実装と数学
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
ソースコードレビューのススメ
ソースコードレビューのススメ
Semelhante a WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
Uwpアプリケーション開発入門
Uwpアプリケーション開発入門
Makoto Nishimura
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
Study Group by SciencePark Corp.
Fx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめ
Masami Yabushita
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり
Study Group by SciencePark Corp.
Html5fun 20150123 JavaScript効率化
Html5fun 20150123 JavaScript効率化
Katsushiro Koizumi
Mochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミット
Katsuaki Sato
Introduction to Favmemo for Immature Engineers
Introduction to Favmemo for Immature Engineers
Takeshi Arabiki
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
Yu Tanaka
複数言語に触れてIoTの表現の幅を広げよう
複数言語に触れてIoTの表現の幅を広げよう
Core Concept Technologies
20090828 Webconlocal
20090828 Webconlocal
Kentaro Matsui
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
Kentaro Matsumae
N29 aoitan firefox osことはじめ
N29 aoitan firefox osことはじめ
Masami Yabushita
Voicepic@FukuiMASeminar
Voicepic@FukuiMASeminar
Manabu Shimobe
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
Masaru Gushiken
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
Study Group by SciencePark Corp.
20150926 uwpストア攻略
20150926 uwpストア攻略
Makoto Nishimura
WordPressサイトをスマホアプリにしちゃおう!
WordPressサイトをスマホアプリにしちゃおう!
Ryu Shindo
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
Kaz Aiso
Challenge PWA!! WordCamp Tokyo 2018
Challenge PWA!! WordCamp Tokyo 2018
Ryu Shindo
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
Monaca
Semelhante a WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
(20)
Uwpアプリケーション開発入門
Uwpアプリケーション開発入門
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
Fx OS n2_aoitan_firefox osことはじめ
Fx OS n2_aoitan_firefox osことはじめ
自社製品のバージョン管理 進化と問題解決の道のり
自社製品のバージョン管理 進化と問題解決の道のり
Html5fun 20150123 JavaScript効率化
Html5fun 20150123 JavaScript効率化
Mochrom - スマートフォンビジネスサミット
Mochrom - スマートフォンビジネスサミット
Introduction to Favmemo for Immature Engineers
Introduction to Favmemo for Immature Engineers
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
複数言語に触れてIoTの表現の幅を広げよう
複数言語に触れてIoTの表現の幅を広げよう
20090828 Webconlocal
20090828 Webconlocal
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
N29 aoitan firefox osことはじめ
N29 aoitan firefox osことはじめ
Voicepic@FukuiMASeminar
Voicepic@FukuiMASeminar
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
SphinxのCIの続き Azure DevOpsでのビルド結果を、認証付きAzure App Serviceに公開するところまで
20150926 uwpストア攻略
20150926 uwpストア攻略
WordPressサイトをスマホアプリにしちゃおう!
WordPressサイトをスマホアプリにしちゃおう!
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう
Challenge PWA!! WordCamp Tokyo 2018
Challenge PWA!! WordCamp Tokyo 2018
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
Mais de Study Group by SciencePark Corp.
YOLOとご一緒にPandasはいかがですか
YOLOとご一緒にPandasはいかがですか
Study Group by SciencePark Corp.
新入社員の俺がDeepLearningのコードを書いてみたら神検出率だった件
新入社員の俺がDeepLearningのコードを書いてみたら神検出率だった件
Study Group by SciencePark Corp.
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
Study Group by SciencePark Corp.
ドライバへのETWの埋め込み
ドライバへのETWの埋め込み
Study Group by SciencePark Corp.
JTAGを使ってみよう
JTAGを使ってみよう
Study Group by SciencePark Corp.
JTAG入門
JTAG入門
Study Group by SciencePark Corp.
初心者向けデバイスドライバ講座(6)
初心者向けデバイスドライバ講座(6)
Study Group by SciencePark Corp.
ローカルストレージでの永続化キューの方式を本気で比較してみた
ローカルストレージでの永続化キューの方式を本気で比較してみた
Study Group by SciencePark Corp.
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
Study Group by SciencePark Corp.
02.超初心者向けセキュリティ入門(IoT)
02.超初心者向けセキュリティ入門(IoT)
Study Group by SciencePark Corp.
06.超初心者向けセキュリティ入門(.netの解析と対策)
06.超初心者向けセキュリティ入門(.netの解析と対策)
Study Group by SciencePark Corp.
Visual StudioでWixをビルドしてみた
Visual StudioでWixをビルドしてみた
Study Group by SciencePark Corp.
MacOS10.15への対応について
MacOS10.15への対応について
Study Group by SciencePark Corp.
Teamsでのリモート勉強会の開き方
Teamsでのリモート勉強会の開き方
Study Group by SciencePark Corp.
リモートでの勉強会参加方法
リモートでの勉強会参加方法
Study Group by SciencePark Corp.
初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2)
Study Group by SciencePark Corp.
No.2 超初心者向け セキュリティ入門
No.2 超初心者向け セキュリティ入門
Study Group by SciencePark Corp.
初心者向けデバイスドライバ講座(1)
初心者向けデバイスドライバ講座(1)
Study Group by SciencePark Corp.
01.超初心者向けセキュリティ入門
01.超初心者向けセキュリティ入門
Study Group by SciencePark Corp.
Azure DevTestLabsはデスクトップアプリ開発のテストを楽にしてくれる
Azure DevTestLabsはデスクトップアプリ開発のテストを楽にしてくれる
Study Group by SciencePark Corp.
Mais de Study Group by SciencePark Corp.
(20)
YOLOとご一緒にPandasはいかがですか
YOLOとご一緒にPandasはいかがですか
新入社員の俺がDeepLearningのコードを書いてみたら神検出率だった件
新入社員の俺がDeepLearningのコードを書いてみたら神検出率だった件
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
.NET CoreでのWindowsサービスの作り方と、Coreならではの便利な機能
ドライバへのETWの埋め込み
ドライバへのETWの埋め込み
JTAGを使ってみよう
JTAGを使ってみよう
JTAG入門
JTAG入門
初心者向けデバイスドライバ講座(6)
初心者向けデバイスドライバ講座(6)
ローカルストレージでの永続化キューの方式を本気で比較してみた
ローカルストレージでの永続化キューの方式を本気で比較してみた
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
Azure VMを検証に使う - 便利なHyper-Vスナップショットを使う方法
02.超初心者向けセキュリティ入門(IoT)
02.超初心者向けセキュリティ入門(IoT)
06.超初心者向けセキュリティ入門(.netの解析と対策)
06.超初心者向けセキュリティ入門(.netの解析と対策)
Visual StudioでWixをビルドしてみた
Visual StudioでWixをビルドしてみた
MacOS10.15への対応について
MacOS10.15への対応について
Teamsでのリモート勉強会の開き方
Teamsでのリモート勉強会の開き方
リモートでの勉強会参加方法
リモートでの勉強会参加方法
初心者向けデバイスドライバ講座 (2)
初心者向けデバイスドライバ講座 (2)
No.2 超初心者向け セキュリティ入門
No.2 超初心者向け セキュリティ入門
初心者向けデバイスドライバ講座(1)
初心者向けデバイスドライバ講座(1)
01.超初心者向けセキュリティ入門
01.超初心者向けセキュリティ入門
Azure DevTestLabsはデスクトップアプリ開発のテストを楽にしてくれる
Azure DevTestLabsはデスクトップアプリ開発のテストを楽にしてくれる
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
1.
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法 (オートスクロールバー付き) サイエンスパーク株式会社 須藤圭太 1
2.
• ID:suusanex( connpass・Twitter・GitHub共通) •
名前:須藤圭太 • サイエンスパーク株式会社という独立系ソフトウェアベンダーに所属 • 4年ほど受託開発で、上流から下流まで全部を回す • ここ6年ほどは、自社製品開発を担当 勉強会、今後も開いていきます。 https://sciencepark.connpass.com/ 自己紹介 2
3.
• WPFは色々画面処理をしてくれるパワフルなFW • ウインドウサイズに合わせて自動的に寄せたり広げたり •
フォントサイズに合わせて文字がはみ出さないように配置したり • しかし、サンプル等も少なく、なかなか狙った動きをさせるのが難しい WPFは高機能だが、難易度が高め 3
4.
• 長いテキストを入力したら、無限に入力できてスクロールバーも出ない • 画面サイズを可変にしたら、テキスト入力に合わせてどんどん横に伸びていった •
間違っちゃいないが、どうも期待と違う動き・・・? 適当に作ると① 4
5.
• 低解像度で起動したら、中身が画面からはみ出して、はみ出した分は操作できない 適当に作ると② 5
6.
• 適当に作るんじゃなく、方針を決めて作らないとダメだ! 気づいた 6
7.
• この方針で作ってみました。 • Webブラウザっぽい動きが良い •
コントロールのサイズよりも画面が小さくなったら、はみ出した部分をスクロール バーで操作できる • 画面が大きくなったら、固定のコントロールはそのまま。可変のコントロールは、最 大値までの範囲で拡大(左上寄せ) • GitHubに置いてあります • https://github.com/suusanex/sample_wpf_window_scrollbar_auto 今回はこの方針で作ります 7
8.
• 画面全体を、ScrollViewerの中にパネルを置いた構成にする • DockPanelで構成し、座標指定はしない 画面を可変サイズに対応・スクロールバーで操作可能にする 8 <Window
(略)Height="600" Width="800"> <DockPanel> <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> <DockPanel> <DockPanel DockPanel.Dock="Top"> <TextBlock DockPanel.Dock="Top" Text="コンテンツ1“ />
9.
• 可変のコントロールのMaxWidthを、画面のActualWidthへバインドする(Widthに すると、最大化などの一時的なサイズ変更に追従できなくなる) 可変コントロールを画面サイズに合わせる 9 <DockPanel DockPanel.Dock="Top"
Margin="0,5,0,0" HorizontalAlignment="Stretch"> <TextBlock DockPanel.Dock="Top" Text="横方向のサイズがウインドウサイズ+αまで大きくなる入力欄"></TextBlock> <TextBox DockPanel.Dock="Top" HorizontalAlignment="Stretch" MaxWidth="{Binding ActualWidth, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=Window}}" ScrollViewer.HorizontalScrollBarVisibility="Auto" /> </DockPanel>
10.
• WPFは • 適当に作ると妙な動き •
きちんと方針を決めて作ると、色々な要求に応えてくれる • 妙な動きでがっかりせずに、上手く使っていきましょう! まとめ 10
11.
SP2006-E04-01
Baixar agora