2011-10-26 8 views
1

私は複数のプロパティ(住宅)を持つデータベースを持っており、それぞれのプロパティは複数の画像を持つことができます。私はプロパティを格納するリストボックスを持っています。プロパティを選択すると、テキストボックスにプロパティ情報が設定されます。 1つのイメージが存在する場合にのみ、イメージコントロールにプロパティイメージを設定できます。データベースの第2の画像へのバインド

つまり、画像はきれいに見えますが、細かくバインドして正しく保存できます。しかし、私が複数のイメージを持っていると、別のイメージにバインドする方法を理解できません。たとえば、私は3つの画像を持ち、それぞれの画像をデータベースの異なる画像に設定することができます。私はこのような何かが、第2の画像を表示するために働くだろうと思ったが、それは...

<Image DataContext={Binding Images} Source={Binding [2].ImageData} /> 

私の質問はありません。どのように私は複数のアイテムを含むデータベース内の特定の項目にバインドします。私は特定のイメージにバインドしたい(私はそれが存在することを知っているので、検証などについて心配しないでください)。

+0

あなたの質問は、データベースから複数の画像を取得する方法または表示方法です。いくつかのxamlコードを表示してください。どのようにイメージを表示しますか? –

+0

コードを編集するには編集が必要です。 – randomalbumtitle

答えて

1

ItemsControlベースのコントロールを使用して画像をバインドする必要があります。したがって、それらは自動的にデータソースと単一の画像によって提供される場合は、複数の画像をピックアップします。

仮にハウスクラスバインディングパスプロパティインデクサ使用して、特定の項目にあなたがバインドできるList<Image>などの画像を暴露:

<Image Source="{Binding Path=Images[0]}" ToolTip="First Image" /> 
    <Image Source="{Binding Path=Images[1]}" ToolTip="Second Image" /> 

MSDN Binding.Path Property:ソース値を指定する

利用Pathプロパティを使用しますバインドしたい:

  • プロパティのインデクサーインデクサが適用されているプロパティ名の後に角括弧で囲んで指定することができます。 インスタンスの場合、Path = ShoppingCart [0]節は、プロパティの内部インデックス がリテラル文字列 "0"をどのように処理するかに対応する インデックスへのバインディングを設定します。複数のインデクサもサポートされています。

  • インデクサとサブプロパティをPath句に混在させることができます。たとえば、Path = ShoppingCart.ShippingInfo [MailingAddress、Street]です。

  • インデクサーの内部に複数のインデクサーパラメータをカンマ(、)で区切って指定できます。各パラメータのタイプは、 カッコで指定できます。たとえば、 Path = "[(sys:Int32)42、(sys:Int32)24]"を持つことができます。sysは システム名前空間にマップされます。

+0

私はxamlとwpfについてかなり新しくなっていますが、そのコードを読むことで、リストに項目を表示するだけではありません。私は既にそれを行う方法を知っているべきだと言わざるを得ないが、私の問題は、3つの別個のイメージコントロールをウィンドウ/フォームの異なる場所に配置する必要があることである。 – randomalbumtitle

+0

@ジェレミー:家には常に最大3枚の画像がありますか? – sll

+0

@Jeremy:私の更新された回答を参照してください – sll

関連する問題