C # Combobox для Windows Forms работает неправильно - PullRequest
1 голос
/ 27 мая 2019

Я сейчас работаю над программой резервного копирования. В пятницу все работало без проблем и проект был почти завершен.

Сегодня я запустил Visual Studio, ничего не делая. И у каждого поля со списком, которое я добавляю, выпадающее меню сдвигается вправо.

Я удалил весь код и создал новые поля со списком, но они по-прежнему отображаются неправильно. У меня никогда не было этой проблемы раньше. Может быть, это дизайнер форм, я еще не проверял. Может быть, кто-то имел эту проблему раньше и может мне помочь? Буду очень признателен.

public Form1()
{
   InitializeComponent();
   this.CenterToScreen();
   this.MaximizeBox = false;
   this.FormBorderStyle = FormBorderStyle.FixedSingle;
   this.Font = new Font("Arial", 10, FontStyle.Regular);
   this.PathSettingsPanel.BackColor = System.Drawing.Color.LightGray;
   this.UsernameComboboxCreate.DropDownStyle = ComboBoxStyle.DropDownList;
   this.SelectBackupSend.DropDownStyle = ComboBoxStyle.DropDownList;
   this.DtDUsernameSource.DropDownStyle = ComboBoxStyle.DropDownList;
   this.DtDUsernameTarget.DropDownStyle = ComboBoxStyle.DropDownList;
   this.indicator.Text = string.Empty;
   this.SendBackupIndicator.Text = string.Empty;
   this.IndicatorSource.Text = string.Empty;
   this.IndicatorTarget.Text = string.Empty;
   this.panel3.BorderStyle = BorderStyle.FixedSingle;
   this.panel4.BorderStyle = BorderStyle.FixedSingle;
   this.panel5.BorderStyle = BorderStyle.FixedSingle;
   this.ServerBackups.View = View.Details;
   this.Updating.Visible = true;
   this.ServerBackups.UseCellFormatEvents = true;
   Serverpath.Text = Main.ReadPathFromFile("server");
   PopulateListBoxes();
   StartCopy.DoWork += backgroundWorker1_DoWork;
   StartCopy.RunWorkerCompleted += backgroundWorker1_RunWorkerCompleted;
   StartCopy.WorkerReportsProgress = true;
   StartCopy.WorkerSupportsCancellation = true;
   FillProgressBar.DoWork += backgroundWorker2_DoWork;
   FillProgressBar.RunWorkerCompleted += 
   backgroundWorker2_RunWorkerCompleted;
   FillProgressBar.ProgressChanged += 
   backgroundWorker2_ProgressChanged;
   FillProgressBar.WorkerReportsProgress = true;
   FillProgressBar.WorkerSupportsCancellation = true;
 }

Missplaced dropdown

Редактировать

Я немного попробовал. Проблема сохраняется, даже если я создаю новый проект и копирую код и формы.

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

Ладно, проблемы, похоже, связаны с табуляцией. Я просто понятия не имею, почему.

...