Đăng Nhập

Vui lòng khai báo chính xác tên truy cập và mật khẩu!

Quên mật khẩu?

    Tạo controls động trong C#

      Admin
      Admin

      Giới tính : Nam

      Đến từ : TPHCM

      Ngày Tham gia : 03/04/2011

      Tổng số bài gửi : 2292

      #1

       Fri Mar 02, 2012 11:01 am

      Làm việc với controls động trong C#, viết code và tùy ý cho hiển thị trên form khi chạy chương trình và những thách thức của controls động.Tạo controls động trong C# RRt5j

      Một control động trong C# là loại control được tạo khi chạy chương trình mà nó không phải được tạo ra khi thiết kế. Điểm mạnh khi thiết kế control động là tạo cho người sử dụng có thể tùy ý tương tác nó trong ứng dụng…
      Các control được thêm vào trong khi đang chạy tương ứng các điều khiển button và Textboox. Tất nhiên tất cả các điều khiển trong C# đều có thể tạo động được.
      Những thách thức của control động.


      Một số thách thức trong việc tạo các control C# trong thời gian chạy là không tự động trong thiết kế. Các thuộc tính như kích thước và vị trí nó được thiết lập bằng tay ngay khi lập trình.
      Một phần khó khăn là khi thêm sự kiện vào control động. Code của sự kiện phải được viết trước, mà phải viết theo cách mà mỗi control động sẽ tiến hành sử lý một cách thích hợp. Ví dụ cùng một sự kiện Click có thể được gắn vào một số điều khiển khác nhau, nhưng nó là cách tốt nhất gọi sử lý phụ thuộc vào nút gọi nó.


      Làm việc với các control động.
      Theo như kích cỡ và vị trí đi, nó giúp lần đầu tiên thiết kế giao diện trực quan trong thời gian thiết kế như một tham chiếu. Nhưng đối với giao diện nâng cao sử dụng sắp xếp, có chức năng đơn giản giúp bạn.
      Tới sự kiện, một cách đơn giản là cho vào cấu trúc và đặt tên. Ví dụ tên nút động với “myButton1”, “myButton2”, …Bằng cách đó các sự kiện được gọi để suy luận các control động được truy cập
      Code:
      //Create the Textbox
       TextBox dynamicTextbox = new TextBox();
       dynamicTextbox.Name = "dynamicTextbox" + i.ToString();
       dynamicTextbox.Width = 290;
       dynamicTextbox.Height = 20;
       dynamicTextbox.Left = 9;
       dynamicTextbox.Top = 10 + (dynamicTextbox.Height); //initial + height + padding
       dynamicTextbox.Text = "This is textbox number 1";
       
       //Create the Button
       Button dynamicButton = new Button();
       dynamicButton.Name = "dynamicButton1";
       dynamicButton.Width = 75;
       dynamicButton.Height = 23;
       dynamicButton.Left = dynamicTextbox.Left + dynamicTextbox.Width + 5;
       dynamicButton.Top = dynamicTextbox.Top;
       
       dynamicButton.Text = "Show";
       dynamicButton.Click += new EventHandler(Button_Click); //hook the Click event
       
       //Add them to the container
       pContainer.Controls.Add(dynamicTextbox);
       pContainer.Controls.Add(dynamicButton);