MVVM
Asp.Net CoreでおなじみのAddHttpClientメソッドを使ってHttpClientを安全に正しく利用することができます. HttpClientの使用上の注意と使い方については以下の公式のガイドに詳しく書いてあります. docs.microsoft.com ここで説明されているとおり,HttpClie…
NavigationPageを使ったページ遷移をやってみようと思います. 変更するところはまず,Appクラスのコンストラクタです. 以下のようにNavigationPageをはさみます. public App(MainPage mainPage) { InitializeComponent(); MainPage = new NavigationPage(main…
これまで,Xamarin.FormsでAsp.Net CoreのDIの仕組みを利用する方法を書いてきました. shuhelohelo.hatenablog.com shuhelohelo.hatenablog.com 最後にまだDIできる余地が残されています. それがApp.xaml.csのAppクラスです. 現時点でAppクラスのコンストラク…
montemagno.com こちらの記事を試してみた2回目. 1回目はこちら. shuhelohelo.hatenablog.com 今回はプラットフォーム固有の機能をDIする場合についてです. プラットフォーム固有の機能(例えば通知機能)を使う場合,共有プロジェクト側でインターフェースを用…
montemagno.com こ,これは...! Xamarin.Forms以外のアプリケーションでも同様に使えそう. Microsoft.Extensions.Hostingをインストールする Nugetから. すべてのプロジェクトに. ビルトインのLoggingフレームワークと,jsonファイル形式(appsettings.json)の…
channel9.msdn.com montemagno.com github.com MVVMフレームワーク色々 MVVMパターンでのアプリケーション開発をサポートするライブラリやフレームワークは色々あります. Prism ReactiveProperty MvvmCross ReactiveUI MVVMLite MVVMHelpers 他にもあると思…
https://blog.verslu.is/xamarin/xamarin-forms-xamarin/databinding-scope-in-xamarin-forms/?utm_source=rss&utm_medium=rss&utm_campaign=databinding-scope-in-xamarin-forms MVVMパターンでアプリケーションを作っている場合,イベントに対する処理をVie…
SqliteはDBをファイルとして扱うので,そのdbファイルを保存する必要があるのですが,この保存先はプラットフォームごとに異なります. プラットフォームごとの処理を呼び分けたいときは,以下の記事のとおり,IPlatformInitializerクラスを使う. blog.okazuki.jp…
mookiefumi.com 印象としては,ASP.NET CoreでいうところのArea機能に似たような感じなのかな. Prismで使いやすいようにConfigureViewModelLocatorに手を加えている. 具体的には以下のように機能ごとにフォルダを分ける方針. │ App.xaml │ App.xaml.cs │ └───…
qiita.com こちら↑の記事にとてもよくまとまっている. ここでは,基本的な実装の形をメモとして残す. public class Message : INotifyPropertyChanged { private string _text; public string Text { get => _text; set { _text = value; OnPropertyChanged(n…
docs.microsoft.com 例えば以下のように,ListView(CollectionView,CarouselViewなど)にバインディングするListとその他のプロパティがあるとします. public partial class MainPage : ContentPage { public int ImageWidth { get; set; } public int ImageHe…
プロパティの変更通知における基本をメモしておく. 例えば以下のプロパティがあったとする. private string _firstName; public string FirstName { get => _firstName; set { if(_firstName==value) { return; } _firstName = value; OnPropertyChanged(nam…
複数のボタンを同じCommandにバインディングし,どのボタンが押されたのかをパラメータで区別したいときがある. その場合はコマンドにCommand型のインスタンスを以下のようにして渡す. public ICommand SendMessageCommand { get; } public MainPageViewModel…
INortifyPropertyChangedを実装してプロパティの変更をView側に通知するには,変更された際にPropertyChangedEventArgsのインスタンスを生成してPropertyChangedEventHandlerの実行時にパラメータとして渡す必要がある. あるプロパティの更新が非常に頻繁だと…