Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
 Controls.Find  [new]
GFX
Member

Откуда:
Сообщений: 283
Господа в net compact framework
не работает метод Find

Чем можно заменить конструкцию вида
Control[] c = this.Controls.Find("Edit" + UI.Name, true);
Спасибо.
17 авг 09, 18:23    [7548235]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
Gatman
Member

Откуда: Донецк
Сообщений: 3580
циклом?
17 авг 09, 18:49    [7548327]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
GFX
Member

Откуда:
Сообщений: 283
цикл не подходит
мне необходимо именно выбрать контрол для последующего его позиционирования
и привязки его к динамически созданному контролу

что типо этого:

Control[] c = this.Controls.Find("pdaEdit" + UI.Name, false);
                        if (c.Length != 0)
                        {
                            c[0].Visible = true;
                            c[0].Location = new Point(UI.PositionX, UI.PositionY);
                            c[0].Enabled = UI.Enabled;
                            c[0].Width = this.ClientSize.Width - 10;
                            p.Controls.Add(c[0]);
                        }
17 авг 09, 18:54    [7548343]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
Gatman
Member

Откуда: Донецк
Сообщений: 3580
ну и чем тут цикл не подошёл? Картинка с другого сайта.
17 авг 09, 18:59    [7548362]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
Gatman
Member

Откуда: Донецк
Сообщений: 3580
foreach(Control c in this.Controls)
{
  if (c.Name == "pdaEdit" + UI.Name)
   {
     c.Visible = true;
     c.Location = new Point(UI.PositionX, UI.PositionY);
     c.Enabled = UI.Enabled;
     c.Width = this.ClientSize.Width - 10;
     p.Controls.Add(c);
     break;
   }
}
?
17 авг 09, 19:04    [7548374]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
проходящий мимо….
Guest
можно по новомодному решить проблему
 this.Controls.OfType<Button>().Where(a => a.Name == "bb").ToList<Button>().ForEach(a=>a.Top=10);
17 авг 09, 19:29    [7548419]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
Gatman
Member

Откуда: Донецк
Сообщений: 3580
рановато наверно ему ещё на linq писать, если циклы не знает как использовать
17 авг 09, 19:35    [7548427]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
проходящий мимо….
Guest
Gatman,
однозначно плюсую
17 авг 09, 21:39    [7548692]     Ответить | Цитировать Сообщить модератору
 Re: Controls.Find  [new]
GFX
Member

Откуда:
Сообщений: 283
Gatman
foreach(Control c in this.Controls)
{
  if (c.Name == "pdaEdit" + UI.Name)
   {
     c.Visible = true;
     c.Location = new Point(UI.PositionX, UI.PositionY);
     c.Enabled = UI.Enabled;
     c.Width = this.ClientSize.Width - 10;
     p.Controls.Add(c);
     break;
   }
}
?


Спасибо большое.
20 авг 09, 14:16    [7561886]     Ответить | Цитировать Сообщить модератору
Все форумы / WinForms, .Net Framework Ответить