![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| passs |
|
|||
|
Unregistered |
Привет все!
Подскажите, плиз, как динамически создать массив объектов, точнее объекты массива? Я все никак правильно не могу синтаксис написать, а может вообще все пишу не правильно: public class WebForm1 : System.Web.UI.Page { protected System.Web.UI.WebControls.Button butAdd; System.Web.UI.WebControls.Image[] myImage;// = new System.Web.UI.WebControls.Image; int yCount = 0; int iCount = 0; private void Page_Load(object sender, System.EventArgs e) { // Put user code to initialize the page here yCount = 150; iCount = 0; } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.butAdd.Click += new System.EventHandler(this.butAdd_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void butAdd_Click(object sender, System.EventArgs e) { // //this.myImage. myImage[] = new myImage[1]; myImage.Style["Left"] = "150"; myImage.Style["Top"] = yCount.ToString(); yCount = yCount + 20; myImage.Style["Z-INDEX"] = "112"; myImage.Style["POSITION"] = "absolute"; Page.Controls.Add(myImage); iCount++; } } вот это то, что не работает:-) Если кто знает, подскажите, плиз, буду очень благодарен! С уважением, Александр |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Отвечаю несколько обще, но это общеупотребительная практика, так что лучше так IMHO.
Ты сначала должен создать массив ссылок на объекты, а потом еще и сами объекты. Например, создать на форме пять кнопок
|
|||
|
||||
| Kurt |
|
||||||||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Я не сильно разбираюсь в этой части ДотНЕТ (имеется ввиду web..), но попробуй написать так:
Т.е. new надо не от объекта, а от типа.. А обращение к элементу массива, даже если в нем тока ОДИН элемент:
Применительно, к твоему коду:
Похоже?.. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
||||||||
|
|||||||||
| AntonSaburov |
|
||||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Вот тут неверно. Первая строка создает ТОЛЬКО МАССИВ еще НЕИНИЦИАЛИЗИРОВАННЫХ ссылок на Image. Т.е. у тебя уже есть заполненная ссылка на массив из одного элемента. А вот сам элемент все еще является NULL. И сначала надо создать объект для заполнения элемента массива, и только потом устанавливать у этого элемента свойства.
|
||||
|
|||||
| Kurt |
|
|||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Неинициализированные ссылки?
Поидее, да.. Вы правы.. Сорри, за ложные сведения.. Однако.. Меня смущает такой код:
Вроде инициализации нет, хотя string - тоже класс.. Все работает.. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Есть Просто здесь происходит unboxing - по сути любой объект может быть как-бы запакован, а потом распакован. Здесь как раз такое - из строки символов автоматическим приведением получается готовый объект String. И его присваиваем ссылке. Так что здесь все нормально. |
|||
|
||||
| Kurt |
|
|||
|
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Хм..
А с System.Web.UI.WebControls, как я понимаю, так нельзя? "Автоматически" ничего не создается?.. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 6 Всего: 118 |
Так точно - не создается. Надо все делать ручками. |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |