私はWPFの新機能ですので、私にご負担ください。WPFは、実行時にC#コードのボタンの画像を設定します。
基本的に私は次のように画像でボタンを表示するWPFユーザーコントロールにスタイルを定義している:
<UserControl.Resources>
<Style TargetType="Button">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<TextBlock HorizontalAlignment="Center" VerticalAlignment="Center">
<Image Width="16" Height="16" Stretch="UniformToFill"/>
<ContentPresenter/>
</TextBlock>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Resources>
私は、実行時にグリッドにボタンの負荷を追加します(それが実行時になければなりませんボタンの数と種類が動的なので)。
私がしたいのは、実行時にボタンのイメージを設定することです。私はいくつかの方法を試しましたが、うまくいかないようです。 Xamlでソースを設定するとうまく動作します。次のように私がしようとしているコードがある:私は推測した場合
Button b = new Button();
// Create source.
BitmapImage bi = new BitmapImage();
bi.BeginInit();
bi.UriSource = new Uri(@"C:\SourceCode\DSA\DSALibrary\Icons\money.png");
bi.EndInit();
b.SetValue(Image.SourceProperty, bi);
誰も私が間違っているつもりだどこに向けて私を指すでした、私は値を設定していると思うところだと思います、I実際はそうではありません。
乾杯
出来上がりら'b'ですか?あなたのUserControlはボタンを派生しましたか? –
問題はボタンがイメージではないということです。そして、bボタンで奇妙なプロパティを設定しようとしています。ボタンのコンテンツにビットマップを設定し、データテンプレートを使用することができます(回答参照) – Arcturus
編集するB. @Arcturus、私はそれが問題かもしれないと思ったが、私はちょうど、それを設定するつもりはない、もしdatatemplatesが行く方法、非常にありがとう。 – MrEdmundo