UserControl: возможность редактирования его свойств в отдельной форме - C#
Формулировка задачи:
Добрый вечер.
суть проблемы в следующем. имеется класс Tool, описывающий UserControl. По щелчку просто отрисовывается прямоугольник, который можно двигать, а по клику открывается форма для заполнения данных (имя, длина, ширина, высота) будущей детали. В класс Tool создан динамический массив, чтобы хранить все данные.
по щелчку по кнопке на форме срабатывает код
все ли правильно и как к двойному клику по детали вызывать форму, куда будут вводится все заполненные данные для этого элемента с возможностью их редактирования. код формы для редактирования
спасибо за помощь. если можно, то с примером
ArrayList tool = new ArrayList();
public void AddTool(string Name, int Lenght, int Wide, int Thickness)
{
tool.Add(new Tool());
}
public void DeleteTool(int index)
{
tool.RemoveAt(index);
}
public Tool GetTool(int index)
{
return (Tool)tool[index];
}
public Tool this[int index]
{
get { return (Tool)tool[index]; }
}Tool det = new Tool();
det.Left = 200;
det.Top = 50;
det.MouseDown += control_MouseDown;
det.MouseUp += control_MouseUp;
det.MouseMove += control_MouseMove;
det.MouseDoubleClick += control_MouseDoubleClick;
panel2.Controls.Add(det);
Деталь editForm = new Деталь();
if (editForm.ShowDialog() != DialogResult.OK)
return;
tools.AddTool(editForm.name, editForm.lenght, editForm.wide, editForm.thickness); public string name //задание имени детали
{
get { return tbName.Text; }
set { tbName.Text = value; }
}
public int lenght //задание длинны детали
{
get { return (int)numLenght.Value; }
set { numLenght.Value = value; }
}
public int wide //задание ширины детали
{
get { return (int)numWide.Value; }
set { numWide.Value = value; }
}
public int thickness //задание толщины детали
{
get { return (int)numThickness.Value; }
set { numThickness.Value = value; }
}
private void button1_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.OK;
}Решение задачи: «UserControl: возможность редактирования его свойств в отдельной форме»
textual
Листинг программы
propertyGrid1.SelectedObject =yourObject;