Я работаю над миграцией продукта с xamarine на MAUI. Приложение имеет базовый вид экрана входа в систему и дочерний вид. базовое представление использует contentpresenter для рендеринга дочернего представления. Но презентатор контента не отображает его элементы. Я испробовал все возможные способы отладки и понял, что элемент создается, также виден в визуальном дереве и отслеживается в пользовательском интерфейсе, но в любом случае он не виден напрямую. Я читал, что MAUI также поддерживает презентатор контента так же, как xamarine. Пожалуйста, просмотрите приведенный ниже код и предложите решение. Однако я попробовал несколько решений. В целях тестирования я сохранил только метку в контенте.
Базовое представление: LoginBaseView
LoginBaseView.Xaml.cs
Код: Выделить всё
public partial class LoginBaseView
{
public LoginBaseView()
{
this.InitializeComponent();
}
}
Дочернее представление: ProviderSelectionUi
Содержимое c: ProviderSelectionUi.xaml.cs
Код: Выделить всё
public partial class ProviderSelectionUi
{
public ProviderSelectionUi()
{
this.InitializeComponent();
}
public void OnLoaded(object sender, EventArgs e)
{
// Check if the label is found and rendered
if (TestLabel != null)
{
Debug.WriteLine($"TestLabel is present. Text: {TestLabel.Text}, IsVisible: {TestLabel.IsVisible}");
}
else
{
Debug.WriteLine("TestLabel not found.");
}
}
}
Он отображает презентатор контента, а не элементы внутри него. тогда как внутренние элементы можно отслеживать в визуальном дереве
Подробнее здесь:
https://stackoverflow.com/questions/790 ... g-elements