Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.02.2012, 10:38   #1
johnik1976
Новичок
Джуниор
 
Регистрация: 21.02.2012
Сообщений: 2
По умолчанию Привязка Контрола к контролу в массиве

private void Form1_Load(object sender, EventArgs e)
{

int Index_I, Border=10;

DataGrid[] ListProducts = new DataGrid[4];

Panel[] SnookerTable = new Panel[4];

for (Index_I = 0; Index_I < 3; Index_I++)
{

SnookerTable[Index_I] = new Panel();
Controls.Add(SnookerTable[Index_I]);


if (Index_I == 0 || ((Index_I) % 4 == 1 && Index_I >= 3))
SnookerTable[Index_I].Location = new Point(Border, Border);

else if (Index_I == 1 || ((Index_I + 1) % 4 == 2 && Index_I >= 3))
SnookerTable[Index_I].Location = new Point(Width / 2, Border);

else if (Index_I == 2 || ((Index_I + 1) % 4 == 3 && Index_I >= 3))
SnookerTable[Index_I].Location = new Point(Border, Height / 2 - Border);

else if (Index_I == 3 || ((Index_I + 1) % 4 == 0 && Index_I >= 3))
SnookerTable[Index_I].Location = new Point(idth/2, Height/2-Border);
ListProducts[Index_I] = new DataGrid();
SnookerTable[Index_I].BorderStyle = BorderStyle.Fixed3D;
ListProducts[Index_I].BorderStyle = BorderStyle.Fixed3D;
SnookerTable[Index_I].Size = new Size(Width/2-(Border*2), Height/2-(Border*3));
ListProducts[Index_I].Size = new Size(SnookerTable[Index_I].Width - 110, SnookerTable[Index_I].Height - Border * 5);
ListProducts[Index_I].Location = new Point(SnookerTable[Index_I].Left - Border / 2, SnookerTable[Index_I].Top + Border * 3);
SnookerTable[Index_I].Controls.Add(ListProducts[Index_I]);

}

}

Имеется такой фрагмент кода, который кладется в загрузку главной формы. Смысл кода
Динамично создать 4 элемента Панели и к каждой панели привязать динамично таблицу
Вроде все работает за исключением того что рисуется только первая таблица а все последующие
как будто их нет, хотя в дебаге проверяю все значения присваиваются так как надо
Однако попробовал убрать следующую строчку кода:
ListProducts[Index_I].Location = new Point(SnookerTable[Index_I].Left - Border / 2, SnookerTable[Index_I].Top + Border * 3);
вроде после убирания этой строчки начинает чертить все таблицы но по краю панели имеется ввиду
то что край таблицы визуально находится на краю панели то есть
Panel(left,Top)=DataGrid(left, top)
а мне надо разместить DataGrid приблизом в середине Panel
Вобщем помогите кто если чем может сижу мучаюсь 3-ий день
johnik1976 вне форума Ответить с цитированием
Старый 21.02.2012, 10:47   #2
Guy
Форумчанин
 
Регистрация: 15.12.2010
Сообщений: 398
По умолчанию

Без кода врятли кто то будет понимать код в котором 50% переменных не известны плюс трубночитаем а так же без тега CODE
Guy вне форума Ответить с цитированием
Старый 21.02.2012, 10:50   #3
johnik1976
Новичок
Джуниор
 
Регистрация: 21.02.2012
Сообщений: 2
По умолчанию

этот код как он есть так его и запихать в форм лоад и будет работать
johnik1976 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Передача данных ActiveX-контролу Вера Дзюба Помощь студентам 0 12.02.2012 17:05
XNA: Рисование маслом по контролу ds.Dante C# (си шарп) 7 28.06.2011 15:03
Как обратиться к контролу на листе? Maryver Microsoft Office Excel 1 22.04.2011 18:47
Текст из Edit контрола jungle Win Api 2 27.10.2009 19:22
Добавление контрола на форму ЯИмя Microsoft Office Excel 1 08.07.2009 15:58