C#
Entity Framework Core を使ったアプリを UWP で作ったので、 ライブラリとツールの使い方をメモしておきます。 基本、ドキュメントの Getting Started 通りにすればいけます。 はじめに、 NuGet から以下のパッケージをインストールします。 Microsoft.Enti…
リレーションが下のような感じの場合。 public class Anime { public int AnimeId { get; set; } public int Year { get; set; } public int Quarter { get; set; } public string Title { get; set; } public virtual ICollection<Episode> Episodes { get; set; } }</episode>…
LINQ to Entities + SQLite で下のようなクエリを使うと、 // 今やるべき予定 var plans = context.Plans.Where(w => w.StartAt <= DateTime.Now && DateTime.Now <= w.EndAt); こんな SQL が発行されます。 SELECT [Project1].[C1] AS [C1], [Project1].[Pl…
WPF だと、 ItemsControl.Items は INotifyCollectionChanged を実装しているので、 いつもどおり検知できるのですが、 UWP だとなくてちょっと困ったのでメモ。 INotifyCollectionChanged の代わりに、 IObservableVector を実装しているので、 そちらを使…
ストアアプリならば、 ms-windows-store://pdp/?ProductId=9WZDNCRFHVJL とすれば、 OneNote のアプリ詳細が開くように、自作のアプリでも対応したくありません? ということで、カスタム URI スキームに対応してみます。 ※なお、この記事は Prism の使用を…
前からちまちまいじってる CefSharp の続きです。 私は CefSharp.WPF 以外は触ってないので、一応それでの話ということで。 前も言ったように、 CefSharp は Chromium を .NET でいじるやつです。 Chromium なので、 Developer Tools みたいなのも実装可能で…
WebBrowser またはそれに近い何かを使えっていう話でもあるんですが、 以下の様な HTML ドキュメントを、 RichTextBlock で表現したいとします。 <p> こんにちは、私は <a href="http://www.softbank.jp/robot/support/">Pepper</a> です。 <br /> 今は<strong>誰でも</strong>購入可能です。 </p> それなりに誰かやってそうなことなので、 MSDN …
Chromium Embedded Framework (CEF) を C# から使えるようにしたプロジェクトのうちの1つに、 CefSharp というものがあります。 WinForms, WPF, OffScreen 用にそれぞれパッケージが用意されており、 NuGet からも導入できます。 そのうち、 OffScreen には…
UWP の GridView でのお話。 いい感じってどんな感じっていう話なんだけれども、文字で書くとすれば、 「ウィンドウの幅によって、水平方向コンテンツ数と幅がちゃんと変わってくれる」 みたいな感じ。 画像で表すと、例によって「ストア」や「フォト」アプ…
前の記事にて、 ApiInformation.IsTypePresent に typeof で指定したのだけれども、 このようなツイートを見かけて心配になったので、試してみました。 あれ、IsTypePresent に typeof().ToString()したら利用不可なとき死なない? — ゆたか (@tmyt) 2016 …
UWP 版 Twitter 公式アプリの UI、個人的にはかなり参考になるのですが、 ところどころ謎な部分がありました。 その1つに、プロフィール画面があります。 これ、上の Pivot 以外が全部1つのスクロールになっていて、 どうやっているんだろうと思ったらでき…
「ストア」アプリなどで使われている Pivot 。 「ストア」アプリなどの挙動をよく見ると、 Pivot の Content の部分だけが遷移しています。 ということで、そこも Prism の INavigationService で遷移させてみました。 深夜テンションで書いたのでちょっとあ…
こういうのを見かけたので。 フィードバック URI をハイパーリンク可能な Twitter クライアントがほしくなってくる — ぶりちゃん (崩壊) (@brichan_fiana) 2016 年 6 月 13 日 URI スキーマ使ったらアプリ開けたりするのかな — Re:雪猫 (@snow_cait) 2016 年…
リフレクションで通常のメソッドを呼び出す方法はよく解説されてるけども、 拡張メソッドを呼び出す方法はなかったので、メモメモ。 拡張メソッド、インスタンスメソッドのように呼び出すことができますが、 実態は静的メソッドです。 例えば、下のような拡…
本筋からはちょっとズレますが、あると嬉しい機能である、ツールチップ表示を実装します。 画像のように、テキスト上にカーソルを持って行くと表示されるあれです。 ツールチップを実装するには、とりあえず継承しただけである AuthoringScope クラス内の、 …
前回、シンタックスハイライトまで作成しました。 今回は、カスタムプロジェクトを作成してみようと思います。 Managed Package Framework の追加 カスタムプロジェクトってなんぞやって話ですが、 C# のプロジェクトの場合は *.csproj が、 Visual Basic の…
ということで、続きです。 今回は、 *.hsp;*.as をシンタックスハイライトする機能を作成していきます。 シンタックスハイライトを行う方法には2種類あり、 Classifier を追加して、 独自の色を定義する方法と、Visual Studio 側の色設定を使用する方法があ…
前回の準備編の続きです。 今回は、言語サービスの拡張を作るための、ベース部分を作成していきます。 ということで、早速ベース部分を作成していきます。 前回作成した VSPackage を変更します。 言語サービスの提供には、 ProvideServiceAttribute, Provid…
学校の後輩に Ruby を使わせることになったのですが、その後輩が 「Python は Visual Studio でできるのに、 Ruby はできないからやる気でない」と言い張るので、 新しく言語サービスを追加する Visual Studio 拡張を作成する方法を、資料として残しておきま…
なんとなく Outlook 2016 を使っていたら、 画像のように、従量制課金接続であることを検出して、自動でオフラインとなっていました。 他のアプリでも使えると、何かと便利そうなので、実装してみます。 従量制課金接続などといったネットワークの状態を知る…
新しいノートパソコン超快適で幸せです。 UWP の入力フォームなどで、タッチキーボード*1を表示すると、隠れてしまう要素があります。 しかしながら、ガイドラインにもあるように、常に表示しておくのが良い要素もあります。 私が探した限りでは、標準で楽に…
UWP でアプリを作っている最中、ちょっと不思議な例外に遭遇しました。 通常の開発環境では出ることはないと思いますが、まぁこういうのもあるよということで、 その出現方法と、解決方法を書いておきます。 コード自体は単純で、以下の様なもの。 var Start…
Xamarin.Forms のリアルタイムプレビューができる Gorilla Player 。 その BETA アクセス権を得たので、使ってみた感想など書いておこうと。 Gorilla Player XAML Live Preview - Grial UI Kit For Xamarin Forms 公式サイト中央にある動画に全てあるのです…
なんともタイトルだけだと、何が言いたいのかわかりづらいですが、 ListView を使った際、アイテム数が少ない場合は、下の方に空のセルが詰められます。 ↓ こんな感じです(一番下が空のセル) 個人的に気持ち悪いので、これを消し去ります。 検索したら出てき…
タイトルではちょっとわかりにくいかもですが、 Xamarin.Forms のいいところは、 iOS と Android で UI を共通化させることで、コードの記述量がへることです。 そういうことで、私も iOS と Android で共通の UI を使っているのですが、 iOS もしくは、 And…
Xamarin.Forms にて、 ContentPage などにある ToolBarItems 。 これはツールバーに対して、アイテムを追加できるプロパティなのですが、 右側からしか配置されません。 公式フォーラムなどでもよく議論されているネタみたいなのですが、 サポートされていな…
Xamarin.Forms + Prism と言った感じで、 MVVM パターンでやってる際に、 ViewModel から、ダイアログを呼び出したい時があります。 その時のやり方みたいな。 単純に View から呼び出したい場合はこんな感じ。 await this.DisplayAlert("Hello", "Hello, wo…
Xamarin.Forms 、UI を共通化できるので便利ではあるのですが、 ところどころ、(少なくとも私にとっては)不可解な部分があるような気がします。 そのうちの一つの、 DataTemplate です。 DataTemplate には、通常 Cell をルート要素として使用します。 簡単…
Prism を使っていて、画面遷移をする際に、ページ全体を遷移するんじゃなく、 SplitView の Content の部分だけ画面遷移させるにはどうするんだろう?ということで。 ちなみに、 Prism を使わず、コードビハインドに直接書いての方法は、サンプル集にありま…
先日、Twitter を眺めてたら、こんな記事が流れてきました。 qiita.com 少し前に、自分の作成している SNS クライアントでも同様のものを実装していたので、 軽く実装方法をメモっておきます。 もしかしたら、これよりもいい方法が在るかもしれません。 List…