Получите объект его Uid в WPF

Я имею контроль в WPF, который имеет уникальный Uid. Как может я retrive объект его Uid?

16
задан Benjamin 20 September 2014 в 13:02
поделиться

1 ответ

Вам придется делать это грубой силой. Вот вспомогательный метод расширения, который вы можете использовать:

private static UIElement FindUid(this DependencyObject parent, string uid)
{
    var count = VisualTreeHelper.GetChildrenCount(parent);
    if (count == 0) return null;

    for (int i = 0; i < count; i++)
    {
        var el = VisualTreeHelper.GetChild(parent, i) as UIElement;
        if (el == null) continue;

        if (el.Uid == uid) return el;

        el = el.FindUid(uid);
        if (el != null) return el;
    }
    return null;
}

Затем вы можете вызвать его так:

var el = FindUid("someUid");
12
ответ дан 30 November 2019 в 22:24
поделиться
Другие вопросы по тегам:

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