我想将我的 TextBlock.Text 绑定到 ListBox.SelectedItems.Count,但我发现当我在列表框中多选项目时,我的 TextBlock 不显示任何内容。
我记得这种方式适用于 WPF,但它不再适用于 Windows Store App。
有没有其他方法可以解决这个简单的问题?
<StackPanel>
<StackPanel.Resources>
<local:NumberToTextConverter x:Key="NumToText" />
</StackPanel.Resources>
<TextBlock Text="{Binding SelectedItems.Count, ElementName=listBox, Mode=TwoWay, Converter={StaticResource NumToText}}"
Height="80" />
<ListBox x:Name="listBox"
SelectionMode="Multiple" />
</StackPanel>
这是转换器,但在这种情况下不是必需的。
internal class NumberToTextConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, string culture)
{
if(value != null)
return ((int)value).ToString();
return null;
}
public object ConvertBack(object value, Type targetType, object parameter, string culture)
{
throw new NotImplementedException();
}
}
我在程序的入口处加载了一些数据。
List<string> gogoString = new List<string>();
for (int i = 0; i < 4; i++)
gogoString.Add(i.ToString());
listBox.ItemsSource = gogoString;