7
如果您需要從後面的代碼訪問WPF控件,則需要在XAML中爲其提供Name
屬性。在WPF中未指定控件名稱...性能影響
在許多情況下,您不需要從後面的代碼訪問控件,因爲很多編碼邏輯(如綁定)可以直接在XAML中直接應用。
我的問題是:從不是提供的性能增益提供name屬性控制?或者給頁面上的所有控件提供名稱是一種好習慣?
如果您需要從後面的代碼訪問WPF控件,則需要在XAML中爲其提供Name
屬性。在WPF中未指定控件名稱...性能影響
在許多情況下,您不需要從後面的代碼訪問控件,因爲很多編碼邏輯(如綁定)可以直接在XAML中直接應用。
我的問題是:從不是提供的性能增益提供name屬性控制?或者給頁面上的所有控件提供名稱是一種好習慣?
是的,沒有提供「名稱」屬性肯定會有性能提升。
WPF的「名稱」的機制可能是有用的,但它使用額外的內存和CPU在幾個方面:
對於一個簡單的控制名稱,添加姓名,從而控制可以增加5使用成本的控制% 或者。這並不是很多,但爲什麼浪費你的CPU週期和你的RAM是不必要的名字?
底線:如果您不需要對象上的名稱,請不要命名它們。通常,控件的內容或綁定足以識別控件的目的。如果這不是足夠的文檔,你總是可以使用XML註釋,這是免費的。
我不得不說這是一個非常糟糕的習慣命名所有控件,而不僅僅是因爲成本,而且還因爲它鼓勵你通過名字來參考您的控制,而不是使用適當的視圖模型和綁定技術。我的大部分XAML都不使用「名稱」來控制任何控件,更不用說所有這些控件了。
我現在感覺不好,我仍然沒有正確的綁定,並且我必須命名所有用數據提供的控件。 :\老問題,但真的很好。 +1的答案和問題 – Malavos 2014-06-05 17:26:28