Приносим извинения за действительно длинный код. Две мои кнопки, taskpagebackbtn и taskpagenextbtn, похоже, не вызываются. Я установил окно сообщения, и оно не появилось, но я не уверен, почему они не вызываются, потому что, когда я открываю свою форму, когда я нажимаю кнопки, они, похоже, не работают.
public partial class Task_Page : Form
{
TextBox[] subjectnamearray { get; set; }
List<string> datatablesubjectnamearray { get; set; }
int numofsubjects { get; set; }
public Task_Page(TextBox[] subjectnamearray, List<string> datatablesubjectnamearray, int numofsubjects)
{
InitializeComponent();
numoftasks.SelectedIndexChanged += (sender2, e2) => numoftasks_SelectedIndexChanged(sender2, e2,subjectnamearray, datatablesubjectnamearray, numofsubjects);
}
private void taskpagebackbtn_Click(object sender, EventArgs e)
{
this.Hide();
var SubjectPage = new SubjectPage();
SubjectPage.Closed += (s, args) => this.Close();
SubjectPage.Show();
SubjectPage.StartPosition = FormStartPosition.Manual;
SubjectPage.Location = new Point(this.Location.X, this.Location.Y);
}
private void taskpagenextbtn_Click(object sender, EventArgs e)
{
Marks_and_Weighting_Table marksandweightingtable = new Marks_and_Weighting_Table(subjectnamearray, datatablesubjectnamearray, numofsubjects);
foreach (Control control in this.Controls)
{
if (control is TextBox)
{
if (control.Text.Trim() == string.Empty)
{
MessageBox.Show("Please fill out all textboxes.", "Error Message");
/*https://www.codeproject.com/Questions/496674/EmptyplusTextboxplusValidationplusinplusC*/
return;
}
}
}
this.Hide();
var MarksandWeightingTable = new Marks_and_Weighting_Table(subjectnamearray, datatablesubjectnamearray, numofsubjects);
MarksandWeightingTable.Closed += (s, args) => this.Close();
MarksandWeightingTable.Show();
MarksandWeightingTable.StartPosition = FormStartPosition.Manual;
MarksandWeightingTable.Location = new Point(this.Location.X, this.Location.Y);
}
private void numoftasks_SelectedIndexChanged(object sender, EventArgs e, TextBox[] subjectnamearray, List<string> datatablesubjectnamearray, int numofsubjects)
{
lblsubjectname1.Text = subjectnamearray[0].Text;
lblsubjectname2.Text = subjectnamearray[1].Text;
lblsubjectname3.Text = subjectnamearray[2].Text;
lblsubjectname4.Text = subjectnamearray[3].Text;
lblsubjectname5.Text = subjectnamearray[4].Text;
lblsubjectname6.Text = subjectnamearray[5].Text;
/*https://stackoverflow.com/questions/2916684/c-sharp-net-change-label-text*/
Что вы имеете в виду под словом «подключился» Как бы вы использовали отладчик?
Перейди по ссылке!! - Вкратце это означает, что событие название, здесь yourControl_theEvent - это связанный к событию. Для этого можно либо используйте код, как и для динамически создаваемых элементов управления, возможно, с помощью лямбда, или же вставляет его в правильный слот панели событий вкладки свойств. Выберите форму, откройте панель событий (с желтой вспышкой) и найдите (например) событие KeyDown! Здесь вставьте название события, и все готово.
Где находится панель событий? Nvm нашла это
Что мне делать с этой функцией?
Какая функция ?? На панели событий перечислены все события, которые объявлены и связаны с элементом управления. Вы создали события щелчка, дважды щелкнув кнопки или вставив код?
Двойной щелчок
Хорошо, тогда они должны быть подключены, и отладчик должен попасть в первую строку, когда вы устанавливаете там точки останова ..?





Итак, они подключился? - Также: пробовали ли вы отладчик, вашего лучшего друга в мире программирования.