« [P18] WPF:スクロールバー(ScrollBar)を付ける | トップページ | [P21] WPF: Canvas の非排他性特性と同一表示空間での重複記載 »

[P19] WPF:コンテント・コントロール(Button)にイメージ(Bitmap)を表示する

WPF下では、ボタン(Button)・ラベル(Label)などの、
プロパティーにContent を含み、テキスト以外のイメージも表示できる
コントロールのことを、コンテント・コントロール(ContentControl)と呼びます。

コンテント・コントロール(ContentControl)にテキストを表示するのは、簡単です。
[以下、C#]

    Button btn = new Button();
  parent.Children.Add(btn); //parent = 例えば、 StackPanel とでもして
    btn.Content = "あいうえお";

ビットマップ(Bitmap)のイメージを表示させたい場合には、次のようになるそうです。

ボタン(インスタンス名 = btn)に、
MyTest.bmp(パス  D:\\MyResources\\Bitmap\\MyTest.bmp)を表示する例。

  using System.Windows.Media.Imaging;
         //BitmapImage クラスを使うのに必要

       
       string pathOfBitmap = "D:\\MyResources\\Bitmap\\MyTest.bmp";

        Image myImage = new Image();
        myImage.Width =  (double)100;
        myImage.Height = (double)30;

        BitmapImage targetBitmap = new BitmapImage();
        targetBitmap.BeginInit();
        targetBitmap.UriSource = new Uri(@pathOfBitmap);
        targetBitmap.EndInit();

        myImage.Source = targetBitmap;
        btn.Content = myImage;

ちなみに、最初は、ボタンに表示するより、Content をプロパティに持つ Window に
デカデカと表示してみることをお勧め。


詳しくは、MSDN ライブラリーの以下を参照。


ContentControl コンテンツ モデルの概要
http://msdn.microsoft.com/ja-jp/library/ms742554(VS.80).aspx

イメージングの概要
http://msdn.microsoft.com/ja-jp/library/ms748873(VS.80).aspx


xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
目次に戻る ・・・・ 左欄のカテゴリー 【パソコンの窓】 をクリック
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    

|

« [P18] WPF:スクロールバー(ScrollBar)を付ける | トップページ | [P21] WPF: Canvas の非排他性特性と同一表示空間での重複記載 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« [P18] WPF:スクロールバー(ScrollBar)を付ける | トップページ | [P21] WPF: Canvas の非排他性特性と同一表示空間での重複記載 »