Кнопка не остается отключенной после повторной загрузки формыC#

Место общения программистов C#
Ответить
Anonymous
 Кнопка не остается отключенной после повторной загрузки формы

Сообщение Anonymous »

Я создаю систему бронирования мест для проекта колледжа. Итак, у меня есть этот код, и если пользователь выберет кнопку/место и нажмет кнопку записи, он запишет это место в текстовый файл. Но если я закрою форму и загружу ее снова, кнопка не останется отключенной, и я не пойму, в чем дело.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace SearchFlights
{
public partial class frmSeat : Form
{
private List selectedButtons = new List();
private int maxSelectedButtons; // Adjust the maximum number of selectable buttons as needed

public frmSeat()
{
InitializeComponent();

button1.Click += Button_Click;
button2.Click += Button_Click;
button3.Click += Button_Click;
button4.Click += Button_Click;
button7.Click += Button_Click;
button8.Click += Button_Click;
button9.Click += Button_Click;
button10.Click += Button_Click;
button11.Click += Button_Click;
button12.Click += Button_Click;
button13.Click += Button_Click; //ECO 13-22
button14.Click += Button_Click;
button15.Click += Button_Click;
button16.Click += Button_Click;
button17.Click += Button_Click;
button18.Click += Button_Click;
button19.Click += Button_Click;
button20.Click += Button_Click;
button21.Click += Button_Click;
button22.Click += Button_Click;
textBox1.Text = "1";
// ... add event handlers for other buttons
}

private void Button_Click(object sender, EventArgs e)
{
maxSelectedButtons = int.Parse(textBox1.Text);

try
{
Button clickedButton = sender as Button;

// Check if the button has already been selected
if (selectedButtons.Contains(clickedButton))
{
MessageBox.Show("Seat already selected.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
return; // Exit the method early
}

if (selectedButtons.Count < maxSelectedButtons)
{
// Display a message box with the button's text
MessageBox.Show("You have selected: " + clickedButton.Text);
selectedButtons.Add(clickedButton); // Keep track of selected buttons
}
else
{
// Maximum number of buttons reached
MessageBox.Show("You can only select up to " + maxSelectedButtons + " seats.");
}
}
catch (Exception ex)
{
MessageBox.Show("Enter number of seats", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}

private void frmSeat_Load(object sender, EventArgs e)
{
this.WindowState = FormWindowState.Maximized;

if (label2.Text == "First")
{
button7.Enabled = false;
button8.Enabled = false;
button9.Enabled = false;
button10.Enabled = false;
button11.Enabled = false; //1-4 FIST
button12.Enabled = false; //7-12 BUS
button13.Enabled = false; //13-22 ECO
button14.Enabled = false;
button15.Enabled = false;
button16.Enabled = false;
button17.Enabled = false;
button18.Enabled = false;
button19.Enabled = false;
button20.Enabled = false;
button21.Enabled = false;
button22.Enabled = false;
}
if (label2.Text == "Business")
{
button1.Enabled = false; //1-4 are first class
button2.Enabled = false; // 7,8 IS B 7-12
button3.Enabled = false;
button4.Enabled = false;
button13.Enabled = false; //13-22 ECO
button14.Enabled = false;
button15.Enabled = false;
button16.Enabled = false;
button17.Enabled = false;
button18.Enabled = false;
button19.Enabled = false;
button20.Enabled = false;
button21.Enabled = false;
button22.Enabled = false;

}
if (label2.Text == "Economy")
{
button1.Enabled = false; //1
button2.Enabled = false;
button3.Enabled = false;
button4.Enabled = false;
button7.Enabled = false;// BUIS:
button8.Enabled = false;
button9.Enabled = false;
button10.Enabled = false;
button11.Enabled = false;
button12.Enabled = false;

}

string baseDirectory = AppDomain.CurrentDomain.BaseDirectory;
string relativePath = Path.Combine(baseDirectory, "Seats.txt");
string[] lines = File.ReadAllLines(relativePath);

foreach (string line in lines)
{
string[] values = line.Split('\t');
if ((label1.Text == values[0]) && (label2.Text == values[1]))
{
for (int i = 0; i

Подробнее здесь: https://stackoverflow.com/questions/791 ... oads-again
Ответить

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

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

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

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

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