Текст comboBox не отображается в UWP? - PullRequest
0 голосов
/ 11 марта 2020

что я пробовал?

ComboBox ComboBox = new ComboBox();ComboBox.Foreground = new SolidColorBrush(Colors.Black);
ComboBox.CornerRadius = new CornerRadius(6);
ComboBox.BorderBrush = new SolidColorBrush(Colors.LightGray);
ComboBox.BorderThickness = new Thickness(1);
string[] FontsList = { "Arial", "Arial Black", "Book Antiqua", "Calibri", };
foreach (string item in FontsList)
 {
    ComboBoxItem comboBoxItem = new ComboBoxItem();
    comboBoxItem.Content = item;
     ComboBox.Items.Add(comboBoxItem);
}
ComboBox.Text = (string)((ComboBoxItem)ComboBox.Items.First()).Content;
Debug.WriteLine(ComboBox.Text);

, когда я пытался напечатать его, он показывает текст в поле со списком

Ответы [ 2 ]

1 голос
/ 11 марта 2020

Вам нужно добавить ComboBox на панель, чтобы показать его. Например, предположим, что вы хотите добавить его в StackPanel с именем MyPanel в xaml.

Обновление:

Необходимо установить для свойства IsEditable значение true, свойство Text действительно вступит в силу, а затем, протестировав, вам нужно установить свойство Text в событии Loaded ComboBox.

.cs:

{
    ComboBox ComboBox = new ComboBox(); ComboBox.Foreground = new SolidColorBrush(Colors.Black);
    ComboBox.CornerRadius = new CornerRadius(6);
    ComboBox.BorderBrush = new SolidColorBrush(Colors.LightGray);
    ComboBox.BorderThickness = new Thickness(1);
    string[] FontsList = { "Arial", "Arial Black", "Book Antiqua", "Calibri", };
    foreach (string item in FontsList)
    {
        ComboBoxItem comboBoxItem = new ComboBoxItem();
        comboBoxItem.Content = item;
        ComboBox.Items.Add(comboBoxItem);
    }

    ComboBox.IsEditable = true;
    ComboBox.Loaded += ComboBox_Loaded;
    MyPanel.Children.Add(ComboBox);
}
private void ComboBox_Loaded(object sender, RoutedEventArgs e)
{
    ComboBox box = sender as ComboBox;
    box.Text = (string)((ComboBoxItem)box.Items.First()).Content;
}
0 голосов
/ 11 марта 2020

Я использовал combobox.selectedIndex = 0, и теперь он работает нормально.

ComboBox ComboBox = new ComboBox();ComboBox.Foreground = new SolidColorBrush(Colors.Black);
ComboBox.CornerRadius = new CornerRadius(6);
ComboBox.BorderBrush = new SolidColorBrush(Colors.LightGray);
ComboBox.BorderThickness = new Thickness(1);
string[] FontsList = { "Arial", "Arial Black", "Book Antiqua", "Calibri", };
foreach (string item in FontsList)
 {
    ComboBoxItem comboBoxItem = new ComboBoxItem();
    comboBoxItem.Content = item;
     ComboBox.Items.Add(comboBoxItem);
}
ComboBox.SelectedIndex=0;
Debug.WriteLine(ComboBox.Text);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...