ブログ記事24件
現在WPFを勉强しているのですが、このようにListViewにイメージをアイコン状に展開させようとしたのですが難渋しました。解ってしまえばなんともないことなのですが、そこは英語力が乏しい悲しさ。日本語の参考記事がなかなか見当たらず、悩みに悩んだので日本語で備忘録です。【ListViewとバインドするためのクラス】publicclassPhoto{publicstringTitle{get;set;}//表題用publ
今回は、画面遷移を行ってみようと思います。私が製作しているアプリは、表示項目が多いため、できるだけ画面の領域を広く使いたいのです。一般的に使用されるNavigationPageは、とても使い勝手が良いのですが、ヘッダが邪魔になります。そこで今回は、NavigationPageのヘッダを表示せずに、画面を遷移してみます。■Navigationヘッダを非表示にするContentPageを変更するNavigationヘッダを非表示にするため、NavigationPage.HasNaviga
SkiaSharpは、Xamarin.Formsで自由自在に描画ができる便利なエンジンですが、DrawTextメソッドで事前準備をせずに日本語文字列を指定すると、文字化けするという落とし穴があります。今回は、その回避方法を解説します。ざっくり言うと、プロジェクトにフォントを埋め込んで、それをSKPaintオブジェクトに指定すると、問題なく表示できるといった流れです。■プロジェクトにフォントを埋め込むまず、ソリューションエクスプローラ>先頭のプロジェクト>右クリック>プロパティを開きます。
アプリ開発で最もやっかいな処理です。今回は、ContentViewのEffects属性>TouchEffect>TouchActionを使用して、タッチアクションの捕捉をしようと思います。かなりの分量のコードになりますが、場合によっては記事を分割するかもしれませんが、できるだけ丁寧に説明していきたいと思います。■タッチ結果の描画処理まずは、一連のタッチ捕捉処理が問題なく動作したと判別できるように、画面表示の処理を実装していきます。<おさらい>●OnTimerが30回/秒で呼び出さ
今回は、タイマイベント(30回/秒)をトリガとして、ビットマップ画像を画面に描画する処理を実装していこうと思います。■タイマイベント内の処理タイマイベントでは、描画するビットマップ画像のNULL判定をした後、後述するコードで定義するビューの描画リクエストをします。boolOnTimerTick(){//BMPデータ=なしの場合、何もしない。if(BitmapData==null){returntrue;}(CanvasViewasS
ではまず、何よりも先に画面を描画する処理を実装していこうと思います。今回のアプリは、自分でビットマップ画像を生成して描画する形を取ります。ですので、まずタイマイベントを実装して、その中で描画が必要か否かを判断して、再描画が必要であれば、ビットマップ画像を更新して、ビューの再描画をリクエストします。■タイマイベントの実装コンストラクタ内で、タイマイベントを登録します。今回は、そんなに頻繁な更新は必要がありませんが、とりあえず1秒間に30回程度のタイマイベント呼出しにしておきます。pub
ここまでで、Xamarin.Formsを使用してプログラムを作成/ビルド/実行する環境が整ったわけですが、ここでXamarin.Formsの概要をざざざっと説明しておこうと思います。■Xamarin.Formsを使用するメリット最大のメリットは、AndroidとiOSのクラスプラットフォーム開発が可能なこと。具体的には、OSに依存しない処理を共通化できます。ある程度構造設計を行ってからプログラムを作成すれば、30~60%くらいの処理を共通化できるそうです。共通化できるのは、・ロジッ
無茶苦茶はまったので書き留めます。UIデバッグツール、非表示でググると下記のような画面を提示するサイトばかりヒットします。しかし、VisualStudio2019の16.8.3以降は「XAMLのUIデバッグツールを有効にする」項目がありません。代わりに「ホットリロード」と言う項目内にある「アプリ内ツールバーを有効にする」のチェックをはずします。私は、これで半日棒に振りました。
こんにちは、本日は2020/10/10、東京は雨です。☔雨というよりも寒暖差が激しいですね、くれぐれも体調に十分お気を付けください。今回はAccessを使ってクエリをバチバチ打っていくことにします。とはいってもSQLを使うだけですww対象となるテーブルは郵便局のホームページで落ちてた事業所がたくさん載っている中々良いテストデータのCSVがありましたので、そちらをインポートして「t_JIGYOSYO」を例題としてやっていきます。【目次】・フィールド4を北海道だけで絞って表示する
今回は、VB.NETを使って別のFormを呼び出す方法を説明したいと思います。使い勝手もいいし現場でもよく扱われます。例:MainWindowというFormを別のFormから呼ぶDimmwAsNewMainWindowMsgBox("Window1")mw.Show()Me.Close()mwでMainWindow型とすれば何不自由なく扱えますね。VBAとかでも使えそうですね。かなりあっさりですがこれからも更
今回はVB.NETを使用してInterfaceの使用方法を学びます。Interfaceを使用することによってのメリットはクラスを作成した人とクラスを利用する人との取り決めができるようなイメージですかね。よくわからないのでやってみましょーーーwwwwまず流れとしては三点あります。①Interfaceを定義②実装をクラスを作成③利用クラス実際に利用するのは実装しているクラス②のインスタンスを作成するイメージですまず①のInterfaceを定義しましょう。ここでは変数のみの説明と
【Tips】階層になっているもの例えば、PersonクラスにID,Name,Ageというプロパティーがあった場合、Pathの指定をどうすればいいか。。。てっきり、ワタクシ、スラッシュだと思っていたんですよね。varbinding=newBinding("Persons/Id");this.SetBinding(ContentPage.TitleProperty,binding);なかなか、うまくいきませ
UWP(VisualStudio2017)C++HttpClientクラスでRESTデータ取得#include<ppltasks.h>#include<codecvt>voidcpp_uwp::json_test::Button_Click_1(Platform::Object^sender,Windows::UI::Xaml::RoutedEventArgs^e){usingnamespaceWindows::Web::Http;
VisualStudio2017VC++UWPで下記エラーが出る場合重大度レベルコード説明プロジェクトファイル行抑制状態エラーC3957'Windows::UI::Xaml::Controls::TreeViewNode':'new'をWinRT型で使用することはできません。代わりに'refnew'を使用してくださいcpp_uwp*.cpp34TreeViewNode^a{refnewTreeViewNode()};
TreeViewを使ってみる<TreeViewName="TreeView1"></TreeView>XAML側のコードはこれだけTreeViewの中にRootNodesがある。これはIList<TreeViewNode>型です。RootNodesに追加するのはList<T>と同じ方法C#側でTreeViewNode追加privatevoidPage_Loaded(objectsender,RoutedEventArgse){for(inti
ビューノステンレス製ふきんスタンドHB-3288楽天市場984円UWPXAMLでDataTemplateタグを使う場合、x:DataType="クラス名"でデータ構造を指定できます。<Page.Resources><DataTemplatex:Key="ZoomedInGroupHeaderTemplate"x:DataType="data:TGroup"><TextBlockText="{x:BindGName}"Foreground
GridViewに部品を配置する場合<GridView><TextBlockText="テキスト"></TextBlock></GridView>StackPanelなどを使うといろんなパターンがグリッド表示できます。<GridView><TextBlockText="テキスト"Width="200"></TextBlock><StackPanelWidth="200"><TextBlockText="テキスト"><
UWPNavigationViewに、アイテムを追加する。<NavigationViewHorizontalAlignment="Stretch"Margin="0,0,0,0"VerticalAlignment="Stretch"><NavigationView.MenuItems><NavigationViewItemIcon="home"Content="こうするのか"FontFamily="SegoeUI"></NavigationV
NavigationViewを使ってプログラム画面左側にメニューを作れる項目を追加するにはNavigationViewItemタグを使う。<Grid><ImageHorizontalAlignment="Left"Height="450"VerticalAlignment="Top"Source="Assets/IMG.jpg"Stretch="UniformToFill"Margin="0,-250,0,0"/><GridHeight="34"
VisualStudio2017のユニバーサル(UWP)ComboBoxで、XAML上だけでアイテム登録。<ComboBoxHorizontalAlignment="Left"Margin="20,20,0,0"VerticalAlignment="Top"Width="200"><ComboBoxItem>りんご</ComboBoxItem><ComboBoxItem>ごりら</ComboBoxItem><ComboBoxItem>ラッパ</C
XAMLのグリッド分割は下記のように可能です。<GridBackground="LightGoldenrodYellow"><Grid.ColumnDefinitions><ColumnDefinitionWidth="200"/><ColumnDefinitionWidth="*"/></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefini
UWPでバーガーボタン<ButtonName="b1"Width="48"VerticalAlignment="Top"Background="Transparent"HorizontalAlignment="Left"Height="40"Click="BackButton_Click"><Button.Content><SymbolIconSymbol="GlobalNavigationButton"/></Button.Content></Button>
今日は晴れ時々曇り。昨日に引き続きデスクトップマスコット開発なわけですけど、WPFとWindowsフォームじゃだいぶ勝手が違うからかなり苦戦してます。処理部分は少ししか違わないんですけど、UIとか処理内容を返す部分がだいぶ違う。そしてXAMLとc#の両方使いながら開発を進めるので、XAMLをあまり覚えてない自分はてんやわんやです。でも少しはXAMLに慣れてきたから、もう少し理解を深めればいい感じに開発を進められる…かも?明日もがんばろ。それじゃ
ビルドをすると、InitializeComponent()が見つかりません、って出てくるんです。結論から言うと、xamlとコードビハインドの名前空間が一致していなかった。ということになるのですが、理由に気が付いたら、しょうもない。危なく、マウスを投げるところだった。(ただし、キーボードには負荷がかかったな。。。ごめんね、myノートPC)ちゅうことで、確認するところは、【xaml】:Class="LD_sample.Views.PageMainList">【コードビハ