MDI child не получает значения от MDI Parent в C#
Я очень плохо знаком с C#, поэтому я запутался в кодировании. (На самом деле, я учусь на психолога и пишу коды для психологического эксперимента.)
В моей программе нажатие кнопки 1 вызовет StartRoutin()
функция, которая будет вызывать дочернюю форму с именем SpiralForm
, В этой форме фильм будет воспроизводиться автоматически в соответствии с путем к файлу. Этот путь к файлу установлен в форме спирали, дочерней MDI, но ключ для установки этого пути к файлу будет решен в родительской форме.
Для этого я сделал две радиокнопки. Нажав Radiobutton 1, переменная spiral_direction будет "влево", а Нажав Radiobutton 2, переменная spiral_direction будет "вправо".
Затем значение spiral_direction будет доставлено в spiral.GetVideoFilePath, чтобы установить путь к файлу дочернего элемента MDI (spiralform).
Даже при том, что я установил все вещи, ребенок MDI не мог получить эту спираль. GetVideoFilePath. Я не могу найти причину.
Ниже приведены соответствующие коды.
1) MDI Parent: private void button1_Click (отправитель объекта, EventArgs e) {
global_counter = 0;
startRoutine();
}
void startRoutine()
{
SpiralForm spiral = new SpiralForm();
spiral.GetVideoFilePath = spiral_direction;
spiral.MdiParent = this;
spiral.Show();
myTimer.Stop();
myTimer.Interval = 1000;
myTimer.Tick += new EventHandler(myTimer_Tick);
myTimer.Start();
}
... private void radioButton1_CheckedChanged (отправитель объекта, EventArgs e) {
spiral_direction = "left";
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
spiral_direction = "right";
}
2) MDI Child: SpiralForm: спиральная приватная строка m_VideoFilePath; публичная строка GetVideoFilePath { get; задавать; }
public SpiralForm()
{
InitializeComponent();
startvideo();
}
private void startvideo()
{
MessageBox.Show(GetVideoFilePath); =>message box is empty!!!
if (GetVideoFilePath == Convert.ToString("left"))
{
m_VideoFilePath = "spiral_left.wmv";
}
else if (GetVideoFilePath == Convert.ToString("right"))
m_VideoFilePath = "spiral_right.wmv";
player.URL = m_VideoFilePath;
player.Ctlcontrols.play();
}
Пожалуйста, помогите мне и дайте мне знать мою ошибку.
Благодарю. BR, younjung