我有一个列表,每个项目都有以下数据模板:
<stack Panel>
<TextBlock Text={Binding SomeText} />
<stackPanel Tag={Binding SecondText}>
<TextBlock = {Binding RandomText} />
</StackPanel>
</StackPanel>
SomeTextClass是
public SomeTextClass
{
public string SomeText{get; set;}
public string SecondText{get; set;}
public string ThirdText{get; set;}
}
我也在解析xml文件以获取List<SomeTextClass>
,然后将ListBox源绑定到List<SomeTextClass>
假设List<SomeTextClass>
具有以下格式:
第1项对象:SomeText1, SecondText1, ThirdText1
第2项对象:SomeText2, SecondText2, ThirdText2
第3项对象:SomeText3, SecondText3, ThirdText3
对于第一个TextBlock和第二个StackPanel标记,我想分配SomeText
,SecondText
,这很好并且也可以正常工作。但是对于内部TextBlock,我想以随机的方式分配ThirdText
,而不是按照列表中显示的顺序分配?{/ p>
当我将列表框绑定到List时,如何才能完成?
答案 0 :(得分:2)
两种方式之一:
直接将随机值分配给ThirdText属性(或为随机值引入第四个属性)。这将使您的绑定保持简单。
将内部TextBlock文本绑定到整个列表,并创建一个IValueConverter以从列表中返回一个随机值。