 |
|
ต้องการให้ MonthCalendar ส่งค่าจากจากฟอร์ม 2 มายัง textbox ของฟอร์ม 1 ครับ |
|
 |
|
|
 |
 |
|
ต้องการให้เมื่อเลือกวันที่จากฟอมสองแล้วส่งมายัง textbox ของฟอร์ม 1 ครับ
จะเขียนโค๊ดยังไงครับ ผมประกาศตัวแปรใน โมดูลไปแล้วชื่อ calendar แต่ก็ไม่ขึ้นอ่ะครับ


ฟอร์มสอง
Code (VB.NET)
Public Class Form2
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Close()
End Sub
Private Sub btn_select_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_select.Click
calendar = MonthCalendar1.SelectionStart.Day.ToString() + "/" +
MonthCalendar1.SelectionStart.Month.ToString() + "/" +
MonthCalendar1.SelectionStart.Year.ToString()
Me.Close()
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
End Class
ฟอร์ม หนึ่ง
Code (VB.NET)
Public Class Form1
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
TextBox1.Text = calendar
End Sub
Private Sub btn_select_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_select.Click
Form2.Show()
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TextBox1.Text = calendar
End Sub
End Class
Tag : .NET, VB.NET, VS 2003 (.NET 1.1), VS 2005 (.NET 2.x), VS 2008 (.NET 3.x), VS 2010 (.NET 4.x)
|
ประวัติการแก้ไข 2019-01-14 10:24:51 2019-01-14 10:28:27
|
 |
 |
 |
 |
Date :
2019-01-14 10:03:33 |
By :
winamp |
View :
1901 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ได้ละครับ
Code (VB.NET)
Form1.TextBox1.Text = MonthCalendar1.SelectionStart.Day.ToString() + "/" +
MonthCalendar1.SelectionStart.Month.ToString() + "/" +
MonthCalendar1.SelectionStart.Year.ToString()
Me.Close()
|
ประวัติการแก้ไข 2019-01-14 13:53:46
 |
 |
 |
 |
Date :
2019-01-14 13:53:28 |
By :
winamp |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ถ้าฟอร์มหลักคือ ฟอร์ม 1 ควร ตั้งค่า MonthCalendar1ใน ฟอร์ม 2 เป็น public จะเหมาะกว่าเอาไปไว้ใน โมดูล นะครับ

เวลาเรียกใช้ คือเราควรเรียกใช้ ฟอร์ม 1 แล้วกด อะไรซักอย่างเพื่อให้ไปเลือกวันที่ ที่ ฟอร์ม 2
Code (VB.NET)
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Using f As New Form2
f.ShowDialog()
Me.TextBox1.Text = f.MonthCalendar1.SelectionStart.Day & "/" & f.MonthCalendar1.SelectionStart.Month & "/" & f.MonthCalendar1.SelectionStart.Year
End Using
End Sub
ส่วนในกรณีที่ใช้ datetimepicker ก็จะง่ายขึ้นหน่อย คือ สั่งให้มันเป็น วันที่ ปัจจุบันได้เลย ใน ฟอร์ม 1 โดยไม่ต้องมี ฟอร์ม 2 มาเกี่ยว
โดยเขียนโค้ดใน Form1_Load ประมาณนี้
Code (VB.NET)
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
DateTimePicker2.Value = DateTime.Now 'ตั้งค่าให้เป็นปัจจบัน
DateTimePicker1.Value = DateTimePicker2.Value.Date.AddDays(-30) ' นับถอยหลังไปซัก 30 วัน
End Sub
แบบนี้ก็จะเป็นการตั้งค่า default ให้กับตัวโปรแกรมของเราเลยว่า
เมื่อเปิดหน้านี้มา มันจะอยู่ในช่วงนี้ ที่นี้ถ้า user อยากเปลี่ยนเป็นวันไหน ถึงวันไหนก็แล้วแต่เขาจะเปลี่ยน

|
 |
 |
 |
 |
Date :
2019-01-14 15:32:02 |
By :
lamaka.tor |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|