【发布时间】:2015-12-20 11:30:46
【问题描述】:
我在 XAML 页面中有一个 Listview 控件,它的 ItemSource 绑定到后面代码中的集合。
集合中绑定到每个 ListView 项的绑定数据模型有一个整数字段,可以包含值 0 或 1。
我将此字段绑定到 ListView 的 ItemTemplate 中的 TextBlock,因此在 ListView 中我看到包含文本 0 或 1 的行。
我的目标是在不更改 ItemSource 本身的情况下,在 ListView 中看到“sometext1”而不是 0 和“sometext2”而不是 1。
我看到的问题是:
TextBlock 控件似乎无法从代码中覆盖以创建自定义 TextBlock,我可以在其中以编程方式更改值。
如果我改用 TextBox 控件,我可以更改值,但是当显示大量数据时程序会变慢并且它也不会显示更改的值。 (在调试模式下,我可以看到该文本属性具有新值,但屏幕上的 TextBox 为空。)
【问题讨论】:
-
添加示例代码,并提及您已经尝试过的所有内容。
-
我试图解释的是我不能使用 TextBox 控件,因为它太慢了。因此,我想在运行时以编程方式更改 TextBlock 控件的 Text 值,其中 TextBlock 具有来自其 itemsource 的其他绑定值。我没有示例代码,因为我不能这样做。我试图编写自定义 TextBlock 控件来做到这一点,但我不能这样做。在我看来,我不能从 TextBlock 类继承自己的控制权。
-
您将哪个字段绑定到 textBlock(“我将此字段绑定到 xaml 网格中的 TextBlock 控件。所以在列表视图中,我看到第 0 行和第 1 行。我的目标是看到“sometext1”而不是 0 和“sometext2”而不是列表视图中的 1,而不更改 ItemSource。”)
-
你可以使用转换器吗?还有文本块与列表视图有什么关系?
标签: c# xaml listview data-binding windows-phone-8.1