【.NET】超簡単にアプリ・URLショートカット集Windowsアプリを作る

# 作るもの
![5i6.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/0b6fdce3-f667-00dd-2401-22876fb082d0.gif)

この記事では、こんな感じで簡単に検索出来たり、URLを開いたり、アプリを起動したりできるWindowsアプリケーションを作れます。

# 対象読者
- Windowsアプリ作ってみたいな～～という人
- アプリ、URLショートカット集作って効率化を図りたい人

# 注意事項
- **Windowsのみです。**

# 前提
- Visual Studioが入っていること
    - WPF.NETが入っていること
- Windowsであること

# 開発環境
Windows 10 Pro
.NET Framework 4.7.2
Visual Studio 2019 Community

# 開発していく
まずVisual Studioを起動します。

### プロジェクトの作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/5533c6cf-29ce-75d8-290d-20c2402518a8.png)
新しいプロジェクトを作成します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/b510fd7a-3e6f-0ff5-a1a8-0e9ea5b89cff.png)

1. WPFと検索
2. WPFアプリ(.NET Framework)を選択
3. 次へを押します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/04727824-3982-9cde-d572-2d07e507b94c.png)

1. 任意のアプリ名を指定します
2. 必要があれば保存するパスを指定します
3. 作成を押します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/5173980a-95d3-f2bf-f59c-5bb2510ecb25.png)

すると、MainWindowが開かれ、UIが表示されると思います。

### Buttonを設置

画面左側にある、「ツールボックス」を開くと、Buttonなどのコントロールがあります。これをつかってUIを作成していきましょう！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/6b210c7b-a78e-2767-22d8-bec75f0bc424.png)
手始めに、Buttonを設置してみましょう。このButtonを押したらGoogle.comを開くようにしてみます。
画面右側にあるプロパティを開きましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/a0c6aba0-1042-fa1a-71d6-fe5cd5ad2f63.png)
「Content」のButtonをGoogleに変えてみましょう。
すると、設置したButtonがGoogleの文字が変わるはずです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/221bb6a5-0b44-deca-4645-775fd43995e5.png)
赤の四角のところを押します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/a780294c-9249-695e-c602-8911c4cd4d9d.png)
Clickの右側にある四角のところをダブルクリックします。

### 処理を書く

```CSharp:MainWindow.xaml.cs
private void Button_Click(object sender, RoutedEventArgs e)
{

}
```

このようなメソッドが生成されます。このメソッドは、Buttonがクリックされたら呼び出されます。
ここに、「Google.comが開かれる処理」を書いていきます。

```CSharp:MainWindow.xaml.cs
        private void OpenProcess(params string[] urls)
        {
            foreach (var url in urls)
            {
                try
                {
                    System.Diagnostics.Process.Start(url);
                }
                catch(Exception ex)
                {
                    MessageBox.Show($"{url}を開くことができませんでした。");
                }
            }
        }
```
まず、上記のメソッドを追加します。

```CSharp:MainWindow.xaml.cs
private void Button_Click(object sender, RoutedEventArgs e)
{
    OpenProcess(@"https://google.com");
}
```
先ほどのButtonのクリック時のメソッドにOpenProcessを呼び出す処理を追加します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/8296fddd-d513-27da-7e6e-a0b70117bef0.png)

画像のところを押して実行してみましょう！
Googleボタンを押すとGoogle.comが開かれるはずです。

アプリを開きたい場合は、

```CSharp:MainWindow.xaml.cs
OpenProcess(@"C:\path\to\app\");
```
のように指定すれば起動することができます。
また、一度に多くのアプリやURLを起動したい場合は、

```CSharp:MainWindow.xaml.cs
OpenProcess(@"C:\path\to\app\", @"https://google.com");
```
のように、指定することができます。

### UIをいい感じにする

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/c602d4a5-603b-329a-6cc6-cb3a103d68ec.png)


1. プロパティを表示するようにします
2. Backgroundなどの値を変えれば色が変わります。
3. 色が変えられます
4. 画像を指定することができます

Windowにも同じように色を変えることができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/360820/93f2c10d-b3ea-999d-ef9e-74b2b74e8a57.png)

このようにいい感じにできました。

# さいごに
簡単にWindowsアプリを作ることができたと思います。
好評だったら詳しく書くかもしれません。

私自身のことを書きます！
ねここ__[@nekokojpn](https://twitter.com/nekokojpn)__といいます！よかったらフォローお願いします！
趣味やお仕事でAR関連を触っています。他にもコンパイラやCPUエミュレータを作ったりしていました。
AR関連やWindowsアプリ関連で記事を書いていきます。よければフォローお願いします！