以下に、ViewとViewModelが表示されます。 結果は次のようになります。背景の各文字がである「A B C」が赤です。 アイテム間に矢印を追加したいBUT矢印を赤で塗りつぶしてはいけません。 それは、このようなものでなければならないことを意味します: "A - > B - > C"だけ、文字は赤で色付けされ、矢印はではなくです。 Converterを使ってTextプロパティの矢印を追加することもできますが、矢印の色も変わります。ItemTemplateの影響を受けないリストボックスアイテムに区切り文字を追加する方法
XAML:背後に
<ListBox ItemsSource="{Binding MyArray}">
<ListBox.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel/>
</ItemsPanelTemplate>
</ListBox.ItemsPanel>
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Background="Red" Text="{Binding}" Margin="5"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
コード:
<TextBlock Margin="5">
<Run Background="Red" Text="{Binding}"/>
<Run Text="->"/>
</TextBlock>
それとも、本当に使うデータテンプレートのうち、それを維持しなければならない場合:
public class MainWindowViewModel
{
public MainWindowViewModel()
{
MyArray = new ObservableCollection<string>();
MyArray.Add("A");
MyArray.Add("B");
MyArray.Add("C");
}
public ObservableCollection<string> MyArray { get; set; }
}
予定されていない場合にのみ動作すること、RelativeSource.PreviousDataであなたの
DataTrigger
を、ベースことができますそのルートは 'A - > B - > C - >'で終わりますが、これは作者の質問ではありません。最初に質問を読んでから答えてください。 –こんにちは、あなたの答えをありがとう。しかし、今私は "双方向バインディングは、パスまたはXPathを必要とする"エラーが出ている、私はテキスト= "{結合パス= DataContext、RelativeSource = {RelativeSource自己}}"を使用してこれを解決しました、エラーについてのアイデア? – EitanG
@EitanG全体のエラーメッセージを投稿できますか? –