首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在窗体之间传递selectionStart属性(monthCalendar) (winforms c#)

在窗体之间传递selectionStart属性(monthCalendar) (winforms c#)
EN

Stack Overflow用户
提问于 2018-05-24 02:47:15
回答 1查看 185关注 0票数 0

我在一个窗体(statsform)上有一个日历控件,我从另一个表单exportform调用该控件:

下面是statsform中的代码,我在其中实例化exportform:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private void export_Click(object sender, EventArgs e)
        {

            if (formIsHidden == 0)
            {
                ExportForm exportForm = new ExportForm();
                exportForm.Show();
                formIsHidden = 1;
            }

        }

每次单击时,我都会以statsform更新日历控件中的日期:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {
            dateFromLabel.Text = dateFromCalendar.SelectionStart.ToString("dd/MM/yyyy");   
        }

        public void monthCalendar2_DateChanged(object sender, DateRangeEventArgs e)
        {
            dateToLabel.Text = dateToCalendar.SelectionStart.ToString("dd/MM/yyyy"); 
        }

下面是来自form2的代码(尝试获取selectionStart属性并使用它)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(On button click)

statsform statsform = new statsform();

string startDate = statsform.dateFromCalendar.SelectionStart.ToString("yyyy-MM-dd 00:00:00");
string endDate = statsform.dateToCalendar.SelectionStart.ToString("yyyy-MM-dd 23:59.00");

(Pass date to SQL Queries)

但是,所选日期未传递给exportform,只有在创建断点并检查字符串时才传递当前日期。

是因为我正在创建表单的一个新实例吗?如何将用户选定的日期从表单传递给第二个表单?

statsform (创建日历) -> exportform (按钮单击event -从statsform日历控件检索selectedDate )

我的解决方案:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public ExportForm(statsform parent)
        {
            InitializeComponent();
            statsform = parent;

        }

允许我使用表单的现有实例。我需要构造函数中的(这个),所以非常感谢您的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-24 02:55:51

在实例化exportform的构造函数以传递对第一个表单的引用时,可以在它上设置一个参数,然后直接引用这些属性。

所以在您的exportform类中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
private statsform _statsform = null;

public exportform(statsform caller) {
    _statsform = caller;
}

然后当你实例化它

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ExportForm exportForm = new ExportForm(this);

从您的按钮单击代码,您将引用状态表中的标签。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var fromDate = _statsform.dateFromCalendar.... etc

关于构造函数的更多信息,这里是https://learn.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/constructors

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50507387

复制
相关文章
C# 子窗体中调用父窗体中的方法(或多窗体之间方法调用)
本文转载:http://www.csframework.com/archive/2/arc-2-20110805-1771.htm
跟着阿笨一起玩NET
2018/09/18
8.4K0
C# 子窗体中调用父窗体中的方法(或多窗体之间方法调用)
WinForms 新窗体后台打开完美的解决
最近在做浏览器开发时,想要实现 IE 6那种多窗体,又允许后台打开而不抢占视野的方式。
跟着阿笨一起玩NET
2018/09/19
5050
C#开发BIMFACE系列53 WinForm程序中使用CefSharp加载模型图纸1 简单应用
  在我的博客《C#开发BIMFACE系列52 CS客户端集成BIMFACE应用的技术方案》中介绍了多种集成BIMFACE到客户端程序中的方案。最后推荐大家使用 CefSharp组件与WebView2组件。本篇文章介绍使用CefSharp组件如何集成BIMFACE到客户端程序中。
张传宁IT讲堂
2021/10/21
2.5K0
[android] 在不同的activity之间传递数据
添加<TextView/>控件,设置控件内容水平居中,android:gravity=”center_horizontal”
唯一Chat
2019/09/10
2.3K0
[android] 在不同的activity之间传递数据
c#进程之间对象传递方法
KV项目下载底层重构升级决定采用独立进程进行Media下载处理,以能做到模块复用之目的,因此涉及到了独立进程间的数据传递问题。
zls365
2021/01/13
7430
c#进程之间对象传递方法
结构体数组在函数之间传递数据
明的数组,进行函数调用时,实参将数组名中存放的数组首地址传递给形参数组名。这样,实参数组名和形参名代表的是同一个结构体数组,因此在被调函数中对数组元素结构体变量的值进行修改后,回到主调函数通过实参数组名访问数组时,可以发现这个改变。
pigeon
2022/04/11
1.9K0
结构体数组在函数之间传递数据
C# winforms 输入颜色转换颜色名
本文告诉大家如何输入颜色,如0xFFFF8000转换为 Orange 在 winforms 程序
林德熙
2022/08/04
3870
C# winforms 输入颜色转换颜色名
本文告诉大家如何输入颜色,如0xFFFF8000转换为 Orange 在 winforms 程序
林德熙
2018/09/18
6190
postman系列(五):在不同接口之间传递数据
为了更灵活地构造请求以及处理响应数据,postman提供了Pre-request-Script和Tests,在这两个标签中可以编写js代码辅助测试。
冰霜
2022/03/15
2K0
postman系列(五):在不同接口之间传递数据
【Android基础】利用Intent在Activity之间传递数据
前言: 上一篇文章给大家聊了Intent的用法,如何用Intent启动Activity和隐式Intent,这一篇文章给大家聊聊如何利用Intent在Activity之间进行沟通。 从一个Activity获取返回结果: 启动一个Activity不仅仅是startActivity(Intent intent)一种方法,你也可以通过startActivityForResult()启动一个Activity并且在它退出的时候收到一个返回结果。 比如,你可以调用系统相机在你的应用中,拍了一张照片,然后返回到你的Acti
程序员互动联盟
2018/03/14
1.6K0
结构体类型数据在函数之间的传递
(3)结构体变量也可以作为函数的返回值,使用 return语句从被调函数返回一个结构体变
pigeon
2022/04/11
2.1K0
结构体类型数据在函数之间的传递
C# 枚举在属性中运用
//默认ZFLText属性值为"Label"  [DefaultValue(typeof(DisplayMode), "Label")]  public DisplayMode ZFLText   {       get;       set;   } [Serializable]     public enum DisplayMode     {         /// <summary>         /// 显示文本         /// </summary>         Label,   
跟着阿笨一起玩NET
2018/09/18
2.3K0
C# 枚举在属性中运用
使用 Spring Cloud Bus 在微服务之间传递消息
Spring Cloud Bus 是 Spring Cloud 微服务框架中的一个组件,可以用于在微服务之间传递消息,从而实现微服务之间的协调和通信。
堕落飞鸟
2023/04/18
7010
c# 停靠窗体
public partial class FrmAnchor : Form, IMessageFilter { public FrmAnchor(Control parentControlc, Control keyControl) { InitializeComponent(); this.Size = keyControl.Size; this.HandleCreated += FrmDow
冰封一夏
2019/09/11
1K0
C# winform美化窗体
大家好,又见面了,我是你们的朋友全栈君。 记录一下winform美化工具CSkin 一个.Net的UI库。 参考链接:https://blog.csdn.net/yyl7727/article
全栈程序员站长
2022/09/01
1.3K0
窗体构造函数——c#
c#窗体构造函数比窗体加载函数Form1_Load()还要早,构造窗体最先运行的函数
vv彭
2020/12/16
1.3K0
Activity之间传递参数
发送 intent.setClass(Bmi.this, Report.class); Bundle bundle = new Bundle(); bundle.putString("KEY_HEIGHT", field_height.getText().toString()); bundle.putString("KEY_WEIGHT", field_weight.getText().toString()); intent.putExtras(bundle); startActivity(intent);
用户1075292
2018/01/23
5960
c# Winform 加载窗体
先来一个加载窗体代码 1 public partial class FrmLoading : Form 2 { 3 public BackgroundWorker updateDBWorker=new BackgroundWorker(); 4 5 public Action BackgroundWorkAction 6 { 7 get; 8 set; 9 } 10
冰封一夏
2019/09/10
1.5K0
使用 Spring Cloud Bus 在微服务之间传递消息示例
下面是一个完整的示例,演示如何使用 Spring Cloud Bus 在微服务之间传递消息。该示例包含两个微服务,一个是消息发送者,另一个是消息接收者。
堕落飞鸟
2023/04/18
1.3K3
C# winform 窗体缩放失真
修改项目的配置文件,使项目运行时自动检测屏幕分辨率,在高分辨率屏幕禁用系统缩放,在项目应用程序清单文件里有对禁用高分屏自动缩放的支持
chuchur
2023/04/24
1.2K0

相似问题

在WinForms窗体之间传递数据

21

在窗体之间传递值(winforms)

33

在c# winforms中在窗体之间传递数据的最安全方法

22

在窗体和类winforms之间传递值

20

如何监控winforms TextBox.SelectionStart属性的更改?

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文