[フレーム]
1 - 40 件 / 51件
マイクロソフト、「.NET MAUI」がリリース候補版に到達。単一コードでWin/Mac/Android/iOSのUIを記述可能に マイクロソフトは、デスクトップアプリからモバイルアプリまで単一のソースコードでクロスプラットフォーム対応を可能にするUIフレームワーク「.NET Multi-platform App UI」(以下、.NET MAUI)がリリース候補版に到達したことを発表しました。 現時点でSDKのAPIは完成し、ライブラリも正式版と互換性があるものになったとのことです。 .NET MAUIには、デスクトップとモバイルの両方のプラットフォームに適用可能なUIを構築するために最適化された40以上のレイアウトやコントロールなどが同梱。 単一のソースコードでWindows、macOS、iOS、Androidそれぞれのネイティブユーザーインターフェイスを備えたアプリケーションが開発可能
今回はいよいよ最終回となります。前回は非機能要件についてアーキテクチャを設計してきました。今回は代表的なユースケースを選定して、アーキテクチャの詳細な設計を蒸留していきます。また、開発者ビューについても設計を行います。利用者側の要件から出てきにくい、開発上に必要となる設計、テスト設計などを実施します。 ソースコード 実際に動作するソースコードは、GitHub上に公開しているので、ぜひご覧ください。ビルドや実行方法については、リンク先のREADME.mdをご覧ください。また、実際に動作させるためには次の2つのライセンスが必要です。 ComponentOne for WPF SPREAD for WPF 4.0J これらは試用ライセンスを発行することができます。 本稿だけで読み進められるように記載していますが、すべてのコードを詳細に解説しているわけではありません。本稿を読んだ後、あらためて動作
こんにちは。VRoid モバイル/StudioのUIを開発したねこまんまです。 先日VRoid モバイル/Studioで利用しているuGUI記述ライブラリ『Mux』を公開しました🎉 github.com 実は以前、pixiv TECH SALONで少しだけ紹介させていただいたのですが、今回はこのライブラリの魅力をより掘り下げて見たいと思います🔍 uGUI? uGUIとはUnityのアプリケーションで使うことができるUIツールキットです。他にもUnityには、新しく開発されているUI ToolkitやUIWidgets、サードパーティーによるものなど様々なものがあります。uGUIはその中でも成熟しており、Unityに標準的に含まれることからよく利用されています。 uGUIの特徴は、Unityのヒエラルキーに則ってUIが構築されることです。そのため、Unity Editorを用いて編集する
.NET MAUIがバージョン1.0に到達。C#/.NETのシングルコードベースでWin/Mac/iOS/Androidのネイティブアプリを開発可能に。Microsoft Build 2022 マイクロソフトはC#とXAMLを用いてシングルコードベースでWindows、macOS、iOS、Androidのネイティブアプリケーションを開発できるフレームワークである「.NET MAUI」(.NET Multi-platform App UI)がバージョン1.0の正式版に到達したことを発表しました。 Introducing .NET MAUI One Codebase, Many Platforms Now, you and 5 million+ other .NET devs have a first-class, cross-platform UI stack targeting Andro
これまでの個人的な経験や、いま持ってるノウハウを注ぎ込んで、Generic Hostに対応したMVVM画面遷移フレームワーク「KAMISHIBAI」をリリースしました。 NuGet GitHub 利用マニュアル API Reference ViewModelのコンストラクターに引数を宣言することで、専用の画面遷移メソッドをコード生成します。 たとえば画面遷移時にstringをわたす場合、つぎのようにViewModelを定義します。 [Navigate] public class FirstViewModel { public FirstViewModel(string message) { Message = message; } public string Message { get; } }
数年前から WinQuickLook という Windows アプリケーションを趣味で開発しているのですが、内部実装をガラッと変えた新バージョンの開発進捗が著しく悪いことに悩んでいました。現在 V4 というソリューションで絶賛開発中となっていますが、リリース日は未定という状態です。 このアプリケーションの開発を加速させるために、ViewModel を用意するより簡単な方法を求めていました。 初期バージョンは Windows Shell 周りの実装に力を入れていたので、UI 周りは Window が 1 つでボタンが数個ある程度だったため、大体はコードビハインドを使って書いていたのですが、V4 を機に MVVM で作ろうとしたところ余りにも面倒すぎて止まっているのが現状です。 Window が 1 つのアプリで ViewModel を分離して、更に MVVM フレームワークの導入とかそっちの
WPFは、Windows Presentaion Frameworkの略で、Windowsのデスクトップアプリケーションを作るフレームワークのことです。デスクトップアプリケーションとは、スマホにアプリをインストールするようなイメージで、Windowsにアプリをインストールする利用形態のアプリケーションです。 Windowsのデスクトップアプリケーションの王道は、Windowsフォームです。いつから存在するのは知らないのですが、相当昔(20年ぐらい前)から存在するフレームワークだと思います。特に技術的進化もないまま、互換性だけが延々キープされているというレガシーな仕組みです。 WindowsフォームとWPFでの開発を両方やって、今でもWPFで作った販売管理システムをメンテナンスしています。Windowsフォームで作ったものを、WPFで焼き直した経験があります。今はWPFをメインにしています。
現在、ドメイン駆動設計やClean Architectureなどが日本でも良く語られるようになり、広く受け入れられはじめています。技術的にはWindows Presentation Foundation(以下WPF)も .NET Frameworkだけでなく .NET上でも動作するようになりました。筆者もそれらを取り入れて開発しています。本稿ではマイクロソフトが架空の大規模多国籍製造企業を想定し公開している、サンプルデータベース「AdventureWorks」を題材に、グレープシティのコンポーネント「ComponentOne for WPF」や「SPREAD for WPF」を活用して業務アプリケーション開発をする際のアーキテクチャを紹介します。 はじめに さて、タイトルをみて疑問を持った方もいらっしゃるのではないでしょうか。「見積編?」と。 2018年4月に書いた「実践WPF業務アプリケ
2022年12月14日 「WeakとStrong」の節に少し追記 はじめに .NET Community Toolkit の v8.0.0 が8月にリリースされました。 これは雑に言うと、Windows開発用のWindows Community ToolkitからWindows 固有でないAPIが独立して作成された最初のバージョンです。 上記Toolkitに、CommunityToolkit.Mvvmが含まれています。 .NET 6 で Incremental Source Generator(ISG)が登場し、多くのボイラープレートコードが高速に生成できるようになりました。 CommunityToolkit.Mvvmでも同様にISGを活用し、多くのコード生成を実現しています。 ※(注記)ちなみにコード生成機能自体は7.1.0でもあったようです。 本稿ではv8のうち、特にコード生成に関連する部分(の
数年前からMicrosoftは、Windows onlyから脱却して、マルチプラットフォーム戦略を打ち出しています。その戦略は、デスクトップ向けのGUIアプリにもおよび、マルチプラットフォームで動作するアプリの開発ができる、さまざまなライブラリやフレームワークが提供されるようになってきました。本連載では、Windows環境におけるマルチプラットフォームGUI技術(.NET以外も含む)について、(主にC#の)サンプルコードをまじえて解説します。 はじめに 本連載では、Windows環境で開発可能なマルチプラットフォームGUI技術を解説します。本稿では、マルチプラットフォームに対応したUIフレームワークである、.NET MAUI(.NET マルチプラットフォームアプリ UI)をとりあげます。デスクトップとモバイル(Android)に対応した、簡単なアプリを作成してフレームワークの使い方を解説し
Windows Form に比べて、画面のデザイン性を大幅に強化したWPF(Windows Presentation Foundation)ですが、Windows Form技術者がWPFに移行することを考えた場合、結構敷居が高いと感じるのではないでしょうか。 特に WPF は MVVM(Model-View-View Model)というデザインパターン(プログラムを作る上での約束ごと)を推奨としていることから、イベントハンドラを使ったWindows Formの作り方とは大きく異なります。 ただ、DIYプログラミングを考えた場合、MVVMで作る意味はほとんど無く、逆に生産性を下げてしまうのでお勧めはしていません。 しかし、MVVMの本質について理解しておくことは大切だと思うので、簡単なサンプルを使って解説しておこうと思います。 MVVMとは MVVM(Model - View - ViewM
・説明 指定した要素が表示された場合のみ、Doシーケンス内のアクティビティを実行する。 ・コメント 該当の画面が表示されるまで待機し、指定した要素・画面がちゃんと表示されたら、その要素・画面に対する処理を行うので、安定的なフローになります。 数秒後など出現するまで何秒かかるかわからない要素を捕まえるのに適しています。 必ず出る前提のアプリケーション(ポップアップなど)に対して起動するのを待ってあげて、起動が完了したら「要素が出現したとき(OnUiElementAppear)」アクティビティの中の処理を行う時によく使います。 また、エラーのポップアップ対応で使うことが多いと思います。ただ見つからないとエラーが発生するので、普通は起きえないポップアップ対応などで使う場合は、「エラー発生時に実行を継続」プロパティをOnにするのを推奨します。
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
LTS(Long Term Support)版はリリースから3年間サポートされます。 Visual Studioにおけるサポートは? Visual Studio 2019 16.3から.NET Core 3.0がサポートされました。 WPFの場合 WPF XAMLデザイナーは、Visual Studio 2019 16.3から使用できます。プレビューではありません。 Windows Formsの場合 Updates on .NET Core Windows Forms designerによりますと、ビジュアルデザイナーはVisual Studio 2019 16.6においてプレビュー段階です。まだいくつかのコントロールしかサポートしておらず、またサードパーティのコントロールもサポートしていません。 全機能のサポートは.NET 5.0の頃になるようです。 .NET Frameworkで作って
概要 .NET Core (6.0) で作られた WPFアプリにて、プロセス間通信(IPC)を行う方法。 同じPCで動作するアプリケーション間で通信できればよかったので、NamedPipe を使うことにしました。 NamedPipe を使うことに至った経緯と、サンプルアプリケーションを紹介します。 きっかけ 二重起動を禁止する にあるように、Mutex を用いて二重起動を防止する WPFアプリを作りました。 また、uap:Protocol を設定して、windows.protocol (例: hogehoge://) で、アプリを起動するようにしていました。 Protocol で起動すると新たにプロセスが起動しますが、すでに起動していたプロセスに、Protocol のパラメータを渡したく、IPC をしたかったのがきっかけです。 Handle Protocol Activation and
やりたいこと Buttonの「Command」プロパティに、ViewModelのICommandに書いた処理をバインドして「ボタンを押したときの処理」を書いていたが、Button以外の普通のコントロール(例えばGridとか)に、「押したときの処理」を書きたい。 =ViewModelで定義したICommandに、ボタンではないコントロールをクリックしたときの処理を書きたい。 (ViewModelで定義したICommandに→表現正しいのか?) EventTriggerを使う EventTriggerを使う前に、下記の手順が必要。 System.Windows.Interactivity.dllを参照に追加 Microsoft.Expression.Interactionsを参照に追加 xmlns:i="http://schemas.microsoft.com/expression/2010/
Today, we are excited to announce that Microsoft Edge WebView2 is now generally available for use in production .NET 5, .NET Core, and .NET Framework WinForms and WPF applications on existing Windows versions! Additionally, we are thrilled to announce that WebView2’s Fixed Version distribution mode is also generally available for production applications. Previously, at Build, we introduced the .NE
データソースを表示および編集する為のコントロールとして「DataGrid」という標準コントロールがWPFには存在します。 データベースのテーブルデータや複数のデータを扱うコレクションクラス(LIST<T>、Dictionary<T>等)の要素を表示することができます。 いざ、DataGrid を使おうとしたら「どうやって使ったらいいのか分からない」ということは多いのではないでしょうか。 この記事では、WPF の「DataGrid」の基本的な操作方法を紹介しています。 最後まで読めば、あなたが抱えている問題が解決するかもしれません。ぜひ全部読んで DataGrid について理解を深めてみてください。
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? .NET5.0も正式リリースされ、C#言語バージョンも9.0となりました。 とはいえ、私自身C#の知識が7.0くらいの知識からアップデートされていなかったりします。 そこで今回はC#8、9辺りの新しい機能を意識しつつ、.NET5.0のアプリケーションを一から作ってみようと思います。 作るもの さて、何を作るかですが 「ほとんどの人がどのようなものか知っている(仕様の説明が要らない)」 「実装の結果が視覚的にわかりやすい」 との理由からWord、Excel等についているオートシェイプ機能のような図形描画のライブラリを作ることとしました。
WPF での MVVM Model/View/ViewModel の話などありますが、きちんと理解するのに数年を要した概念なので改めて概念をまとめてみます。 この記事でまとめたいこと Model/View/ViewModel の書き方 View と ViewModel の分離について ダイアログの出し方 .NET Community Toolkit, Microsoft.Extensions.DependencyInjection, Microsoft.Xaml.Behaviors.Wpf の使用を前提とします。 作ったアプリのサンプルは に設置します。 作るアプリ ・Web APIから現在時刻を取得して、その結果を表示 ・ダイアログで確認後、選択内容をクリップボードにコピーする MVVM の実装 Model MVVM における Model は「View に関わらないこと全般」です。 AP
WPFといえばバインディングを思い浮かべやすいですが、MVVM(Model View ViewModel)パターンもその特徴になります。MVVMパターンとは、データ(ロジック)とUI機能を分離するデザインパターンの一種で、開発やデバッグを効率的に行えます。 WPFでもWindows FormsのようなForm.csにイベントハンドラをたくさん追加するような書き方もできるが、推奨されていません。MVVMパターンを使うのが一般的です。 ただし、MVVMパターンと言っても1つの定型があるわけではなく、人によって書き方がたくさんあり学習者を困らせます。しかも時代はwebアプリケーション。今頃古めかしいUIを持つWPFを学ぶ人は一部の企業ぐらい。さらにWPFをMVVMパターンで簡潔に説明した書籍がないため初学者には学習しづらい環境になっている。(誰か出版してください)。 ここでは、他のサイトにもある
System.Windows.Interactivity.dll から Xaml.Behaviors.Wpf へ 公開済み 2020年8月16日 · 更新済み 2022年8月29日 このサイトで公開するエントリのほとんどは連載記事ですが、このカテゴリの記事は連載ではありません。今まではこのエントリに書いているような内容は連載記事の一部として書いていましたが、他記事からリンクし易いよう単独記事として分割する事にしました。今回は WPF アプリを作成するためには欠かせない System.Windows.Interactivity.dll が OSS になり名前も変わった Xaml.Behaviors.Wpf について紹介します。 尚、この記事は Visual Studio 2019 Community Edition で .NET Core 3.1 以上 と C# + Prism + MahA
NuGetでいろいろいれたWPFアプリをビルドしたらDLLファイルが散乱してしまったのでまとめる方法を調べました。 「ILMergeでできる」 「WPFだとできないからプロジェクトファイルをいじる」 などが出てきたのですが 「Costura.Fodyを使え」
XAML 系のプラットフォームで開発するときによくお世話になるデータバインディングですが、個人的に開発中にはまらないために気を付けていることを紹介しようと思います。 間違えないために ハマらないために気を付けることは、Visual Studio に書いてもらうことです。これが一番大事です。人がプログラムを書くから間違えるので、なるべくツールに書いてもらいましょう。 データバインディングのパスでも同じで Visual Studio が DataContext の型を認識できるようにするとインテリセンスが効きます。Visual Studio に書いてもらうことが出来ます。 例えば Windows Template Studio で適当に新規作成したプロジェクトの DataTemplate の Binding でインテリセンス出してみるとこんな感じになりました。 こんな状態だと、心の目でバインド
Microsoft.Toolkit.Mvvm (2023年時点では、CommunityToolkit.Mvvm に名称が変更されています) WindowsCommunityToolkit の中にあるMVVM用ライブラリの紹介Youtubeに以下のようなベンチマークが出ており、 そのパフォーマンスと省メモリーに興味がわいたので試してみました。 触って2日目ですので軽いご紹介です。 2022年1月13日更新: GitHub のソースコード移動のためURL更新 2022年4月25日 新バージョン ver8の新機能を別投稿しています。 特徴 MVVM Lightにインスパイヤされた、よりモダンで軽量なライブラリ。同作者も携わっているとのこと。 .NET Standard2.0対応 .NET , .net Framework , mono , Xamarin , Uno などで動作。フレームワークに
The CommunityToolkit.Mvvm package (aka MVVM Toolkit, formerly named Microsoft.Toolkit.Mvvm) is a modern, fast, and modular MVVM library. It is part of the .NET Community Toolkit and is built around the following principles: Platform and Runtime Independent - .NET Standard 2.0, .NET Standard 2.1 and .NET 6 🚀 (UI Framework Agnostic) Simple to pick-up and use - No strict requirements on Application
As the world’s largest domain registrar with over 20 million customers, GoDaddy manages more than 84 million domains, offering a robust platform with 24/7 customer support and a wide range of TLDs. Its user-friendly interface and comprehensive services, including hosting and website builders, make it ideal for businesses seeking an all-in-one solution. Price 100 USD Auction Type Godaddy Fix price
WPF の日本語ドキュメントもかなり増えてきて喜ばしいのですが、 エッセンシャル的な書籍が多い印象を受けています。 例えば「10 日でできる」とか「WPFで作る○しろまる○しろまる」とかいったような、 作業しながら読み進める学習本みたいなのは少ないというか 出版されてないんじゃないかな〜ということで、 ないものは作ればいいじゃないの精神で自分で作ってみました。 PDF ファイルをこちらからダウンロードできます。 完全に独学で、C# も初めて触ってから 3 年も経っていないような 私が作ったものなので足りない部分は多々あると思いますが、 これから WPF+C# でアプリケーション開発を始めようと思う人たちにとっては 足がかりの一つになるんじゃないかなと思います。 また、こちらは公開するかどうか迷いましたが、 せっかくなのでこの機会に外へ出してみたいと思います。 「WPF 入門」というタイトルで、標準コントロ
WPFで画面遷移しようとしてWEB検索をかけるとPageとFrameを使った画面遷移が上位に表示されます。これらは開発者が実現したい機能がない場合があるため、MVVMパターンとContentControlの利用を推奨します。 コンストラクタで初期画面を反映させる場合 大まかな流れ 1表示したいUIをUserControlとして作成 2MainWindow.xamlにResources、DataTemplate、ContentControlを設定 3ContentControlで設定した変数ActiveContentに表示したいUIのViewModelを設定 コンボボックスで複数画面の画面遷移を行う場合 OverView 各コードやXAMLを解説していく。 MainWindow.xaml AView.xaml,BView.xaml,MainWindow.xaml.cs MainContent
[WPF,Prism] RegionManagerによる画面遷移方法まとめ 2021年09月20日 C# C#, Prism, WPF Prism で RegionManager を使った画面遷移方法 Navigation Using the Prism Library for WPF | Prism WPF でよく使われるフレームワーク Prism の提供する RegionManager を使った画面遷移方法の使い方をまとめます。 今回は Prism のテンプレートを使用して作成したプロジェクトをサンプルとして用います。 Region の基本 Prism では Region という表示領域を管理し、そこに表示するコンポーネント(UserControll)を RegionManager という管理クラスで切り替えることができます。 例えば "ViewA" と "ViewB" という名前の U
こんにちは、kenzauros です。 WPF でソフトを作っていると標準のコントロールで足りないことがよくあります。 DataGrid の ComboBox や CheckBox もその一つで、イケてないコントロールの代表格です。おまけに MahApps.Metro のようなコントロールライブラリでもなかなか補完できないのが困った点です。 目新しいことではないですが、 DataGrid を使うときにいつも忘れてしまうので、メモついでにスニペットをご紹介します。 使えない DataGridCheckBoxColumn WPF の DataGrid には DataGridCheckBoxColumn というそのままな名前の列があり、これを使うと簡単にチェックボックスが表示できます。 まぁ、表示するだけなら問題ないんですが、普通チェックボックスを置くときは有効・無効を切り替えたりしたいときだと
結論 結論から言うと、次の2つの改善を現行のWPFプロジェクトでやっておけば、いざWinUI 3やMAUIへ移行しようとした場合も楽にできそうだ。 MVVMの構造にして、画面とロジックを分離しておく。 GenericHostを使い、アプリの初期化やインスタンス生成と、ロジックを分離しておく。 1についてはCommunityToolkit.Mvvmを使っておくと楽で、1と2のやり方が分からなければTemplate Studioで生成したコードを参考にすれば良い。 詳細 結論までの経緯や詳しいやり方は、3つの資料があるので、この後にリンクを貼る。(記事中の単語やリンクについても資料内にある) 今すぐWinUI3やMAUIに移行するのは難しい場合が多いと思うが、結論に書いた取り組みをしておけば、いざ移行する時も楽になるし、もしWPFプロジェクトのまま行く場合も保守性が上がる。 筆者も現行のWPF
1)概要 WPFでMVVMを使った簡単なサンプルを作ります。 数字を2つ入力してボタンを押すと合計が表示されます。 MVVMライブラリにはWCT MVVM Toolkit(Microsoft.Toolkit.Mvvm)を使用します。 2)環境 Windows 10 Version 21H1 .NET Framework 4.7.2 / .NET 5.0 Visual Studio 2019 Version 16.10.2 WPF Microsoft.Toolkit.Mvvm Version 7.0.2 ModernWpfUI Version 0.9.4 3)プロジェクトの作成 MVVM Toolkitを使ったプロジェクトはWindows Template Studioでも作れますが、 Template Studioは使わずに一から作っていきます。 .NET Framework 4.7.2の
※(注記)これは XAML Advent Calendar 2016 の25日目の記事です。 追記: 現在は推奨していません。 WPF/XAML を使って帳票のデザインから印刷までやってみたという話です。ソースコードが GitHub にありますので、それと同様にやればできます。 vain0x/wpf-printing 要約 XAML というマークアップ言語で帳票のデザインから印刷までできれば、たくさんの利点がある。 WPF アプリケーションで帳票のプレビューや印刷を行うサンプルを作った。 ページネーションが大変だったけどなんとかなった。 前提知識 XAML、WPF について簡単に説明します。 XAML とは、GUIアプリケーションの外観を記述するマークアップ言語です。WEB 系の人には「HTML+CSS みたいなもの」といえばイメージしやすいのではないでしょうか。 WPF とは、XAML と .N
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く