ListBox のカスタム ItemTemplate があり、TextBlock を特別なメソッド/プロパティに「バインド」する必要があります。
私の ListBox ソースはObservableCollection<SearchResultItem>
. SearchResultItem
いくつかのプロパティが含まれています。
テキストは、別のオブジェクトの値に基づいて変更する必要があります。EG このオブジェクトが「foo」に等しい場合、正しい値を取得するためにメソッドGetProperty("foo")
を呼び出すテキスト値が必要です。SearchResultItem
コードのサンプルを次に示します。
<DataTemplate>
..
//Here is a Label bound to the Date Property of the SearchResultItem
<Label Margin="2,2,2,0" Grid.Row="0" Grid.Column="2" Content="{Binding Path=Date}" HorizontalAlignment="Right" HorizontalContentAlignment="Right" />
//Here is the textblock that needs to call the method with the parameter based on the value of the other object.
<TextBlock Margin="2,2,2,0" TextTrimming="CharacterEllipsis" Grid.Row="0" Grid.Column="1" Text="I need some help there" HorizontalAlignment="Left" VerticalAlignment="Center" Foreground="Black"/>
..
</DataTemplate>
それを行う方法、またはそれを行うためのより良い方法について何か考えはありますか?
編集:
SearchResultItem
-外部ライブラリからのもので、メソッドのみを公開すると仮定しましょうGetProperty
。
-「foo」の値がConfigurationManager.AppSettings["propertyName"];
役立つ場合に由来するとしましょう。