-2

是否可以在消息框上显示 DateTimePicker 控件以在控制台应用程序中选择日期。

4

4 回答 4

1

不在标准的 MessageBox 上。您需要创建自己的表单来显示。

于 2012-08-13T10:23:17.823 回答
0
`public MyClass()
 {
 // Create a new DateTimePicker
 DateTimePicker dateTimePicker1 = new DateTimePicker();

 Controls.AddRange(new Control[] {dateTimePicker1});
 MessageBox.Show(dateTimePicker1.Value.ToString());

 dateTimePicker1.Value = DateTime.Now.AddDays(1);
 MessageBox.Show(dateTimePicker1.Value.ToString());
 }

`

这是一种访问消息框中日期选择器控件的方法。

你具体做了什么?你能更详细地解释一下这个要求吗?

于 2012-08-13T11:30:58.883 回答
0

MessageBox是一个方便的功能。这种便利是以定制为代价的。MessageBox不提供向其添加您自己的控件的方法;您必须创建自己的表单。

请注意,即使在控制台应用程序中,您仍然可以创建 Windows 窗体。

于 2012-08-13T11:34:41.750 回答
0

我知道它很晚,但如果有人正在寻找如何做到这一点。使用 CustomMessageBox 代替 MessageBox。教程可以在这里找到

TimePicker timePicker = new TimePicker()
                {
                    Margin = new Thickness(0, 10, 0, 10)
                }; 

                StackPanel myStackPanel = new StackPanel();
                myStackPanel.Orientation = System.Windows.Controls.Orientation.Vertical;
                myStackPanel.Children.Add(timePicker);                    

                //Create a new custom message box
                CustomMessageBox messageBox = new CustomMessageBox()
                {
                    Content = myStackPanel,
                    LeftButtonContent = "Ok",
                    RightButtonContent = "Cancel",                        
                    IsFullScreen = false                        
                };

                messageBox.Show();
于 2016-01-07T06:10:53.653 回答