【发布时间】:2012-01-11 22:10:02
【问题描述】:
我有 DP a 和 b,c 通过 i 转换器绑定到它们(请注意,a 和 b 可能通过转换器绑定到另一个 DP)。我修改 a 和 b 或它们绑定的一些 DP,然后在计算中使用 c。我在 for 循环中执行此操作,这需要很长时间,条件是 i=0; i<100000; i++)。所以我想知道数据绑定的效率如何?它应该在这样的场景中使用吗?
下面是一些示例代码:
for ( int i = 0; i < 100000; i++){
//... code to pick m based on some random numbers
hazards[m].Reactant1.Count -= 1;
hazards[m].Reactant2.Count -= 1;
hazards[m].Product.Count += 2;
display.Text = hazards[m].Value.ToString();
}
hazards.Value 通过转换器绑定到反应物的数量,反应物的数量绑定到文本框文本属性。 m 是根据危险值和一些随机数选取的。
【问题讨论】:
-
听起来您应该将视图与模型分开。查看 MVVM。
-
@AvadaKedavra 我知道 MVVM 是什么,但我不知道如何关联您的答案。
-
不,不应该。尽可能靠近源代码,您只需一步即可通过 UI 网格进行操作。
-
@TonyHopkinson 什么是 UI 网格?你知道关于 DP 表现的任何 MS 资料吗?
-
@JohnnyGraber 我添加了一些代码。
标签: wpf performance data-binding dependency-properties