Как создать элемент управления, который можно расширить до размера родительского элемента управления в WinUI 3C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как создать элемент управления, который можно расширить до размера родительского элемента управления в WinUI 3

Сообщение Anonymous »

Я хотел бы создать элемент управления, который можно будет расширять и отображать, даже если его размер больше, чем у его родительского элемента управления. Мне нужно TextBox для ввода чего-либо и развернуть элемент управления при вводе текста , чтобы отобразить несколько кнопок. Точно так же, как когда AutoSuggestBox или адресная строка веб-браузера получили предложения, область расширяется и плавает на поверхности.
это AutoSuggestBox
Я пытался поместить все, что хочу показать, в Всплывающее меню, а затем сделайте всплывающее окно плавающим над исходными элементами управления.













public void ShowFlyout()
{
/**
BaseGrid is the grid contains textbox
TextBoxPart is a TextBox
And the Flyout is attached to BaseGrid.
*/
BaseGrid.Children.Remove(TextBoxPart);
// move the textbox from BaseGrid to Flyout
try { FlyoutStack.Children.Insert(0, SearchBoxPart); }
catch (Exception e){ }
SearchBoxFlyout.ShowAt(BaseGrid); //show the flyout
}

Но когда текст написан сложным языком. Перемещение текстового поля приведет к исчезновению полученного символа. Есть ли альтернативный способ расширить элемент управления?
Обновить
Вот мой новый код, SearchBox — мой класс.
public static readonly DependencyProperty TextBoxText = DependencyProperty.Register(
nameof(myText),
typeof(string),
typeof(SearchBox),
new PropertyMetadata(default, (sender, args) =>
{
((SearchBox)sender).TextChanged();
}));

public string myText
{
get => (string)GetValue(TextBoxText);
set => SetValue(TextBoxText, value);
}

public void TextChanged()
{
Debug.WriteLine($"{TextBoxControl.Text}////{TextBoxOnFlyout.Text}////{myText}");
// When I enter text in TextBoxControl myText Changed but TexBoxOnFlyout doesn't
}















Подробнее здесь: https://stackoverflow.com/questions/792 ... -control-i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»