ComboBoxにEnumをバインドして別の文字列を割り当てる方法を書きます。 参考にしたのはこちらの、一般的なクラスをComboBoxの項目に登録する方法です。
Enumだけを対象にするなら違うやり方もあるようです。
以降、最初に見つけたやり方を元にしたコードについて説明します。
Enumとそれをプロパティとして持ったクラスはこんな感じ。
ComboBoxにEnumをバインドして別の文字列を割り当てる方法を書きます。 参考にしたのはこちらの、一般的なクラスをComboBoxの項目に登録する方法です。
Enumだけを対象にするなら違うやり方もあるようです。
以降、最初に見つけたやり方を元にしたコードについて説明します。
Enumとそれをプロパティとして持ったクラスはこんな感じ。
wpfのライブラリをちょっと調べたところ、ディスプレイの解像度を調べる方法はみつかりませんでした。 通常の、.NET Frameworkのwpfじゃない部分を使って解像度を調べます。 MainWindowがあるディスプレイの解像度を調べるには、
WindowInteropHelper wih = new WindowInteropHelper(App.Current.MainWindow); System.Windows.Forms.Screen screen = System.Windows.Forms.Screen.FromHandle(wih.Handle); System.Drawing.Rectangle bounds = screen.Bounds;
System.Windows.FormsとSystem.Drawingの参照が必要です。 ここで使っているRectangleはwpfのシェイプではないので注意。 名前が衝突しないようにusingを使用せずに↑のように名前空間ごと全部書くか、
using DNETDrawing = System.Drawing; ... DNETDrawing.Rectangle bounds = screen.Bounds;
などのように書きましょう。
wpfに次のような例外メッセージがあります。
InvalidOperationExceptionのメッセージです。 こんなコードで再現できます。
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
Window w = new Window();
w.Owner = this;
w.Show();
}
}
ちょっと前にPCで音を聞くとき、ソフトウェアでスピーカとヘッドホンを切り替える方法を投稿しました。 その投稿でオーディオ切り替え機器についてもふれています。
切り替える方法を調べたのは、スピーカで大きな音を出すと近所迷惑になるので、大きめの音で聴きたいとき=ヘッドホン、普段=スピーカと使い分けるためです。
オーディオ切り替え機器、立ち寄った店で探してみたんですけど売ってません。 今まで家電量販店3件と、その他数店をまわってみたけど見つかりませんでした。 こりゃ近場で買うの無理かな? 1つ700円くらいの商品なのでアマゾンで買うのもバカらしい気がします。 当面、切り替え器はあきらめることにしました。
そういえば、ヨドバシで音量調節が付いたオーディオ延長ケーブルは売っていました。 これと分配ケーブルを組み合わせるしかないかな?
アマゾンでお買い物