ทำไมต้องสร้าง User Control ใช้เอง
เพื่อให้ได้ Control ตัวใหม่ ที่เหมาะจะใช้เป็น Template เพือให้ง่ายต่อการแก้ไข และใส่ Effect ได้ง่ายขึ้น
วิธีการ
- คลิกขวา Add > New Item
- เลือก User Control ตั้งชื่อ File
- ปรับแต่หน้าตา User Control ตามต้องการ
แล้วถ้าต้องการใส่ Properties เพื่อให้แก้ไขค่าได้ล่ะ?
ให้ใส่ Code นี้เข้าไปใน .cs โดยสมมุติว่า Properties ที่จะเพิ่มชื่อว่า Text และเมื่อแก้ไขจะให้ไปแก้ค่า Text ของ txtBlock
public string Text { get { return txtBlock.Text; } set { txtBlock.Text = value; } } // Using a DependencyProperty enables animation, styling, binding, etc. // อย่าลืมแก้ตรงนี้ public static readonly DependencyProperty TextProperty = DependencyProperty.Register( //ตรงนี้ใส่ชื่อ Properties "Text", // The name of the DependencyProperty //ใส่ชนิด Properties typeof(string), // The type of the DependencyProperty //ชื่อ Class ของ Control typeof(MyMenuItem), // The type of the owner of the DependencyProperty new PropertyMetadata( // OnBlinkChanged will be called when Blink changes false ) );
จบครับ
การนำไปประยุกต์ใช้
สามารถใส่ Effect เป็น state ใน Control ได้ และยังใส่ Event ได้อีกด้วยประหยัดการ Code และแก้ไขได้ง่ายขึ้นอีกด้วย