Я хотел бы создать всплывающее окно с шириной, например 800, которая совпадает с шириной TextBox. А затем прикрепите всплывающее окно к текстовому полю. Поскольку я не могу напрямую установить ширину всплывающего окна (в классе Flyout нет свойства Width). Я попытался установить ширину сетки внутри всплывающего меню равной 800. Вот мой код
Код: Выделить всё
public SearchBox()
{
this.InitializeComponent();
}
public void ShowFlyout()
{
SearchBoxFlyout.Placement = FlyoutPlacementMode.Bottom;
SearchBoxFlyout.ShowAt(SearchBox1);
}
Когда я запускаю метод ShowFlyout(). Он показывает сетку с прокруткой вместо расширения всплывающего меню (извините, я не изменил цвет фона, поэтому его может быть трудно увидеть). Текстовое поле выше имеет ширину 800. Очевидно, что Flyout не имеет ширины 800.

Я старался следовать этому официальному документу. Поэтому я добавляю эти xaml в элемент
К сожалению, ничего не изменилось. Как я могу решить эту проблему?
Подробнее здесь:
https://stackoverflow.com/questions/791 ... -in-winui3