Найти метку по тегу в WPF MVVM

Вот несколько тестов производительности:

И 4 решения:

  1. document.getElementById('container').innerHTML += '

    Just some text here

    ';
  2. $('#container').append('

    Just some text here

    ');
  3. var div = document.createElement("div"); div.innerHTML = '

    Just some text here

    '; document.getElementById('container').appendChild(div)
  4. document.getElementById('container').insertAdjacentHTML('beforeend', '

    Just some text here

    ');

Настройка среды (2018.07.02) MacOs High Sierra 10.13.3 на Chrome 67.0.3396.99 (64-разрядная ), Safari 11.0.3 (13604.5.6), Firefox 59.0.2 (64-разрядная версия)):

Как видим, insertAdjacentHTML является (Safari 110M операций в секунду, Chrome 65M, Firefox 39M), поэтому простой javascript быстрее, чем jQuery (во всех браузерах). ВнутреннийHTML + = ... медленнее, чем jQuery для всех браузеров.

Вы можете повторить тест на вашем компьютере здесь: https://jsperf.com/insert-html-ttest

0
задан mm8 18 March 2019 в 14:19
поделиться

1 ответ

Вы можете указать Grid x:Name в вашей разметке XAML:

<Grid x:Name="theGrid">

... и сослаться на него под этим именем в вашем коде:

var label = theGrid.Children.OfType<Label>() ...
[119 ] Обратите внимание, что это не MVVM каким-либо образом, хотя. Используя MVVM, вы получите доступ к свойству Nodeid источника, а не к свойству Tag элемента Label.

0
ответ дан mm8 18 March 2019 в 14:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: