0
イメージとラベル付きのUserControlを使用してカスタムチェックボックスを作成しました。私はそれをクリックするたびにCheckedとUncheckedの画像を交換したい。 これまでのところ、私は私のコードは動作しませんし、私はこのようにやってしまったStateImageWPFバインドStringとしてStaticResourceを返します
public String StateImage
{
get
{
return is_checked?"{StaticResource Checked}":"StaticResource Unchecked";
}
}
というプロパティ持って、次の
<Image Source="{Binding StateImage}"/>
やってみました:
public String StateImage
{
get
{
return is_checked?"/Resources/Images/Checked.png":"/Resources/Images/Unchecked.png";
}
}
is_checked
UserControlのMouseDownイベントで変数が変更される
パスとファイル名全体を書き込まなくても簡単に画像を呼び出せますか?
あなたは常に 'UserControl'を捨てとcheckbox'で'に基づいてカスタムコントロールを作成することができ、異なる画像特性を有しています各状態について「ControlTemplate.Triggers'を介して画像をスワップします。しかし、この提案はあなたの質問からは少し離れているので、今は完全に吹き飛ばされているように感じることはありません。 – grek40
カスタムコントロールは必要ありません。適切なCheckBoxスタイルで十分です。 – Clemens
私はWPFが新しく、コントロールテンプレートを解析するのが苦労しています。だからこそ、私は快適な方法を使いました。しかし、他の方法はありませんが、デフォルトのテンプレートをオーバーライドする方法を学ぶことだと思います。 –