trong ứng dụng của tôi, tôi có một điều khiển LineShape và một điều khiển tùy chỉnh (về cơ bản là một PictureBox có nhãn).Cách tạo tham chiếu đến cấu trúc trong C#
Tôi muốn LineShape thay đổi một trong các tọa độ điểm của nó, theo vị trí của điều khiển tùy chỉnh.
Tôi đã có ý tưởng đặt tham chiếu đến điểm LineShape bên trong điều khiển tùy chỉnh và thêm trình xử lý sự kiện thay đổi vị trí thay đổi tọa độ điểm được tham chiếu.
Tuy nhiên được xây dựng trong Point là một cấu trúc là một loại giá trị, do đó sẽ không hoạt động. Có ai có ý tưởng, làm thế nào để làm cho một tham chiếu đến một cấu trúc hoặc có thể ai đó biết một workaround cho vấn đề của tôi?
Tôi đã thử giải pháp liên quan đến việc sử dụng loại có thể vô hiệu hóa nhưng vẫn không hoạt động. Dưới đây là cách tôi xác định lĩnh vực này trong điều khiển tùy chỉnh của tôi (DeviceControl):
private Point? mConnectionPoint;
Và thực hiện của địa điểm thay đổi xử lý sự kiện:
private void DeviceControl_LocationChanged(object sender, EventArgs e)
{
if (mConnectionPoint != null)
{
DeviceControl control = (DeviceControl)sender;
Point centerPoint= new Point();
centerPoint.X = control.Location.X + control.Width/2;
centerPoint.Y = control.Location.Y + control.Height/2;
mConnectionPoint = centerPoint;
}
}