トルネード

毛利のメモ書き

C#

Interop.Outlook.Application タイプ ライブラリ/DLL の読み込みエラー

Unable to cast COM object of type to interface type 'Microsoft.Office.Interop.Outlook.Application'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{00063001-0000-0000-C000-00000000004…

HttpClient An invalid Unicode character by IDN standards was specified in the host.

C#

C# の HttpClient でエラー出た One or more errors occurred. (An invalid Unicode character by IDN standards was specified in the host.) ↑この エラーは初めて見た お客様 の 環境設定 で Proxy 設定するさいに 全角 ( Unicode ) が混ざってたというこ…

C# 改行 Environment.NewLine

C#改行は、Environment.NewLine Windowsの場合 改行は 2Byte"¥r¥n" CR LFとか言ったり 13,10と言ったり macOSやLinuxなどは"¥n" string kaigyo = $"改行{Environment.NewLine}";

C# 実行ファイルディレクトリ Path.GetDirectoryName

C#

C#で、実行時ディレクトリを取得する方法 EXE絶対パス String _location = System.Reflection.Assembly.GetEntryAssembly().Location; 上記で、exeファイルの絶対パス付きで返ってきます。 ディレクトリ名だけ取り出す String _dname = Path.GetDirectoryNam…

Ubuntu 18.04.2 LTS に.NET Core 2.2をインストール

linux-package-manager/ubuntu18-04/sdk-current 上記URLの通りにインストールする wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb sudo add-apt-repository universe …

C# List<T>ソート

C#

internal class TListSort<_T> : List<_T>, IComparer<_T> { private Func<_T, _T, int> __func; public TListSort(Func<_T, _T, int> _f1) { __func = _f1; } public new void Sort() { Sort(this); } int IComparer<_T>.Compare(_T x, _T y) { return __func(x,y); } } 上記のような感じで作っておく</_t></_t,></_t,></_t></_t></_t>…

ローカルのC#から、AWSSDK.SimpleEmail を使ってメール送信

C#

Visual Studio 2017 C#を使ってAmazon Web ServiceのAmazon Simple Email Service (SES)を試す NuGet パッケージマネージャー コンソールでAWSSDK.SimpleEmail と、AWSSDK.Coreをインストールする Install-Package AWSSDK.SimpleEmail -Version 3.3.7.20 I…

SqlClient.SqlDataReaderをジェネリックスで判断

C#

SqlClient.SqlDataReaderで型指定した条件を返す場合 private T GetSqlDataReader<T>(System.Data.SqlClient.SqlDataReader rd, int cnum) { try { if (!rd.IsDBNull(cnum)) { if (typeof(T) == typeof(string)) { return (T)(object)rd.GetString(cnum); } els</t>…

XAML UI Debugging Toolsを非表示にする

XAML Debugging Tools デバッグ実行時にアプリ画面上に表示されているツールバー 非表示に設定できます。 Menu[Tools|Options...]Optionsダイアログが表示されます。 [Debugging|General]内の「Enable UI Debugging Tools for XAML」のチェックを外す…

C# Console 文字列右詰め左スペース

C#

Console.WriteLine("{0}", ((int)1).ToString().PadLeft(10)); PadLeft()を使う。

[C#]System.Net.IPAddress IPアドレス判定

C#

IPアドレス判定 if (System.Net.IPAddress.TryParse("192.168.0.0", out out_ip_address)) { //IPアドレスです。 } else { //IPアドレス形式ではない。 }

[ .NET Core 2.1]ConfigurationManager app.configデータ取得

Visual Studio 2017 .NET Core 2.1で app.configを使う ConfigurationManager取得 NuGet パッケージマネージャーコンソールでConfigurationManagerを取得 Install-Package System.Configuration.ConfigurationManager -Version 4.5.0 SqlClient 4.5.1を取得 …

UWP C# DynamoDB Query

Visual Studio 2017 UWP C#プロジェクトでDynamoDB Query発行する場合 DynamoDBのQueryを発行する場合、QueryRequest.KeyConditionExpressionに条件を書きます。条件に変数が必要ですが、その変数はExpressionAttributeValuesに設定します。 Itemデータを取…

UWP C# DynamoDB Scan

Visual Studio 2017 C# UWPプロジェクトから DynamoDB接続 AWS SDK for .NET DynamoDB NuGet パッケージをプロジェクトにインストールします。Visual Studio 2017の、[パッケージマネージャーコンソール]から下記のコマンドを入力する。 Install-Package A…

UWP 入門 - HttpClientからJSON取得

Visual Studio 2017 UWP C#で、RESTへ接続しJSON取得するコードです。RESTへの接続は、HttpClientクラスを使います。 JSONデータは下記のようなデータです。 {"hoge":1010,"hoge2":"鉄人"} JSONの文字コードはUTF8です。UTF8のJSONデータ取得してからUnicode…

UWP 入門 - ウィンドウ半透明

Visual Studio 2017 のUWPウィンドウ半透明実装方法です。 Compositorクラスは、ビジュアルレイヤ・エフェクトシステム・アニメーションシステムにわたるWindows.UI.Composition名前空間のさまざまなタイプのファクトリとして使用できるアプリケーション用の…

UWP 入門 - TreeView イベント

TreeViewのItemInvokedイベントでアイテムが取得できます。 <TreeView Name="TreeView1" ItemInvoked="TreeView1_ItemInvoked" > </TreeView> args.InvokedItemでTreeViewNodeオブジェクトが取れます。 private void TreeView1_ItemInvoked(TreeView sender, TreeViewItemInvokedEventArgs args) { TextBlock1.Text = ((TreeViewNode)args…

UWP 入門 - TreeViewとTreeViewNode

TreeView Visual Studio 2017 UWPのTreeViewを使ってツリー表示させます。 <TreeView Name="TreeView1"> </TreeView> XAMLファイル側はこれだけです。 private void Page_Loaded(object sender, RoutedEventArgs e) { IList<TreeViewNode> l1 = new List<TreeViewNode>(); for (int i = 0; i < 20; ++i) { l1.Add(new TreeViewNo</treeviewnode></treeviewnode>…

UWP 入門 - SemanticZoom

SemanticZoomとは UWPでの、SemanticZoomとは、グループ化されたデータセットを2つの異なるビュー切替えナビゲートできるコントロールです。 ZoomedInView はコンテンツのメインビューで、個々のデータ項目を表示する。 ZoomedOutView は、 このビューにグル…

UWP 入門 - Binding データ更新[INotifyPropertyChanged]

下記のxamlコードはGridにTextBlockを貼っただけのシンプルなコードです。 TextプロパティにBindingを書いています。 <Grid> <TextBlock Text="{Binding DtNow}" Loaded="TextBlock_Loaded" Name="TextBlock1"></TextBlock> </Grid> Text="{Binding DtNow}"部分に独自クラスをバインドさせて、クラスからのデータ更新を反映させText表示を変更させます。 独自クラス作…

UWP 入門 - GridView

GridView アイテム追加 簡単なクラスを作成し、GridView のアイテム登録する方法です。 XAMLデザイン画面で下記のようにGridView を追加します。 <GridView Name="gv1" Background="DarkCyan"> <GridView.ItemTemplate> <DataTemplate> <StackPanel Orientation="Horizontal" Width="250"> </stackpanel></datatemplate></gridview.itemtemplate></gridview>

UWP 入門 - タイトルバーのボタンを透過

前回は、ExtendViewIntoTitleBar = trueにしてタイトルバーの非表示をしました。 引続きタイトルバーのボタンも透過します。 上の図のように右上部のボタンが透過していることが確認できます。 App.xaml.csでのコード 右上部のボタンを透過するには、App.xam…

UWP 入門 - 既存のタイトルバー非表示 ExtendViewIntoTitleBar

既存のタイトルバー非表示 ExtendViewIntoTitleBarをtrueするとタイトルバーが非表示になります。 App.xaml.csにWindows.ApplicationModel.Core追加します。 using Windows.ApplicationModel.Core; App.xaml.csにコード内にOnLaunched()があるので、1行追加 …

UWP 入門 - ComboBox

ComboBox アイテム登録 XAMLで、ComboBox のアイテム登録実装方法です。 <ComboBox HorizontalAlignment="Left" Margin="20,20,0,0" VerticalAlignment="Top" Width="200" Name="c1"> <ComboBoxItem>りんご</ComboBoxItem> <ComboBoxItem>ごりら</ComboBoxItem> <ComboBoxItem>ラッパ</ComboBoxItem> <ComboBoxItem IsSelected="True">パンダ</ComboBoxItem> <…</combobox>

UWP 入門 - 画面遷移と戻るボタン

MainPage.xaml以外のページに移動 Visual Studio 2017メニューから[新規作成|プロジェクト]を選択すると「新しいプロジェクト」ダイアログが表示されます。[Visual C#|空白のアプリ(ユニバーサルWindows)]でUWPのプロジェクトが作成されます。 その…

UWP 入門 - ラムダ式

C#言語でのラムダ式 C++で便利なLambda式ですが、C#言語にも同じようなラムダ式が使えるようです。C++の場合Functionalをインクルードしますが、C#は宣言するだけです。 public delegate void Proc<in T>(T arg1); 上記はProcと言う名前のラムダ型を宣言しています</in>…

UWP 入門 - async/await シンプルな例

mojeld.amebaownd.com async/awaitについて、上記URLにもすごくシンプルな例を書いています。 ここでは、Task.Run()中にXAMLのオブジェクトを変更する例です。 まず、「ProgressBar」「Button」「TextBox」を適当に配置します。 「ProgressBar」「TextBox」…

UWP 入門 イベントを作ろう

C#でイベントを作ってみよう イベント宣言を作るのは簡単です。 // C#でのイベント public delegate void Proc(object sender); 上記のような感じでイベント作成できます。 C++BuilderでいうところのTNotifyEventみたいな感じです。 // BCBの場合 typedef vo…

C#言語 IDisposableを使ってDispose()を実装

C#でinterfaceを作る C#も他の言語と同様にinterfaceが作成できます。IDisposableを継承したinterfaceを作成し、Dispose()されるか試してみました。 IDisposableを継承したinterface interface IHoge2: IDisposable { void Foo();//=0は要らない。 new void …