Submit Search
Upload
WPFの画面をWebブラウザのように拡大・縮小に追従させる方法(オートスクロールバー付き)
•
Download as PPTX, PDF
•
0 likes
•
1,939 views
S
Study Group by SciencePark Corp.
Follow
勉強会で発表した資料。 https://sciencepark.connpass.com/event/178816/
Read less
Read more
Software
Report
Share
Report
Share
1 of 11
Download now
Recommended
Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。
Yuya Yamaki
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
U-dai Yokoyama
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
Unity開発で使える設計の話+Zenjectの紹介
Unity開発で使える設計の話+Zenjectの紹介
torisoup
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
Recommended
Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。
Yuya Yamaki
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
U-dai Yokoyama
WPF開発での陥りやすい罠
WPF開発での陥りやすい罠
Sho Okada
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
Unity開発で使える設計の話+Zenjectの紹介
Unity開発で使える設計の話+Zenjectの紹介
torisoup
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
ichirin2501
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
ゲームエンジンとMVC
ゲームエンジンとMVC
AimingStudy
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
インタフェース完全に理解した
インタフェース完全に理解した
torisoup
XAML Islands
XAML Islands
m ishizaki
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
View Customize Pluginで出来ること
View Customize Pluginで出来ること
onozaty
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
async/await のしくみ
async/await のしくみ
信之 岩永
Prism + ReactiveProperty入門
Prism + ReactiveProperty入門
一希 大田
型安全性入門
型安全性入門
Akinori Abe
Iocコンテナについて
Iocコンテナについて
Akio Terayama
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
Uwpアプリケーション開発入門
Uwpアプリケーション開発入門
Makoto Nishimura
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
これ以上ソースコードの負債を増やさないためにVisual Studioの静的解析とAzure PipelinesでCIを回す
Study Group by SciencePark Corp.
More Related Content
What's hot
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
ichirin2501
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
cct-inc
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Soudai Sone
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
ゲームエンジンとMVC
ゲームエンジンとMVC
AimingStudy
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
Shigenori Sagawa
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
インタフェース完全に理解した
インタフェース完全に理解した
torisoup
XAML Islands
XAML Islands
m ishizaki
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
View Customize Pluginで出来ること
View Customize Pluginで出来ること
onozaty
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
Teppei Sato
async/await のしくみ
async/await のしくみ
信之 岩永
Prism + ReactiveProperty入門
Prism + ReactiveProperty入門
一希 大田
型安全性入門
型安全性入門
Akinori Abe
Iocコンテナについて
Iocコンテナについて
Akio Terayama
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
土岐 孝平
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Jun-ichi Sakamoto
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
What's hot
(20)
外部キー制約に伴うロックの小話
外部キー制約に伴うロックの小話
Msを16倍出し抜くwpf開発1回目
Msを16倍出し抜くwpf開発1回目
PostgreSQLアンチパターン
PostgreSQLアンチパターン
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
ゲームエンジンとMVC
ゲームエンジンとMVC
良い?悪い?コードコメントの書き方
良い?悪い?コードコメントの書き方
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
インタフェース完全に理解した
インタフェース完全に理解した
XAML Islands
XAML Islands
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
View Customize Pluginで出来ること
View Customize Pluginで出来ること
君はyarn.lockをコミットしているか?
君はyarn.lockをコミットしているか?
async/await のしくみ
async/await のしくみ
Prism + ReactiveProperty入門
Prism + ReactiveProperty入門
型安全性入門
型安全性入門
Iocコンテナについて
Iocコンテナについて
これからSpringを使う開発者が知っておくべきこと
これからSpringを使う開発者が知っておくべきこと
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
がんばらなくても C# で Single Page Web アプリケーションが書けてしまう「Blazor」とは
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Similar to 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
Similar to 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スマホアプリ開発(入門編)
More from 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.
More from 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
Download now