gpt4 book ai didi

c# - 获取从另一个 Window WinForms C# 返回的值

转载 作者:行者123 更新时间:2023-11-30 14:46:32 24 4
gpt4 key购买 nike

我有一个网格,用户可以在其中选择行并更改行的日期。
我的问题是我不知道如何在窗口之间传递值。
我的第一个窗口 (form1) 有网格,第二个窗口 (form2) 是我选择日期的地方:

enter image description here

在上述情况下,应更改所选日期的日期。

我拥有更新所需的所有信息,但唯一遇到问题的是将所选日期从第二个窗口传递回第一个窗口。

我的做法是:

表格 1:

private void btn_LaunchChangeInvoiceDate_ItemClick(object sender, ItemClickEventArgs e)
{
DateTime UpdatedDate;
if(gridView.SelectedRowsCount > 0 )
{
Form2 DatePicker = new Form2();
DatePicker.Show();
UpdatedDate = DateTime.Parse(DatePicker.SelectedDate);
}
}

表格 2:

 public String SelectedDate;

public MonthPicker()
{
InitializeComponent();
}

private void btn_PickDate_Click(object sender, EventArgs e)
{
SelectedDate = dateTimePicker1.Value.ToString("yyyy-MM-dd");
}
}

SelectedDate 推送到 Form1 的方法是什么?
我当前的应用程序在没有太多信息的情况下卡住了...

最佳答案

我认为问题在于您执行的是 DatePicker.Show() 而不是 DatePicker.ShowDialog()。 ShowDialog 停止在该行执行的代码,直到窗体关闭。 Show 将立即继续执行代码。这样做的结果是,当 Form1 查看时,您的 SelectedDate 为空。

如果您不想使用 ShowDialog,则必须使用不同的方法来检索值,例如在单击“选择日期”按钮时在 Form2 上的事件。

旁注:我认为不需要在 Form2 中格式化日期,只要将 SelectedDate 属性设为 DateTime 类型,Form1 就可以根据需要格式化它,而不必解析字符串。

关于c# - 获取从另一个 Window WinForms C# 返回的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48835531/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com